C# Class OData4.Builder.ODataClientTemplate

The template class to generate the OData client code.
Inheritance: TemplateBase
Mostrar archivo Open project: meancrazy/LINQPadOData4 Class Usage Examples

Protected Properties

Property Type Description
Context CodeGenerationContext
IdentifierMappings string>.Dictionary
SingleSuffix string

Private Properties

Property Type Description
CheckMethodsInBaseClass bool
GetElementTypeName string
GetFixedName string
GetParameterExpressionString string
GetParameterStrings void
GetSourceOrReturnTypeName string
HasBoundOperations bool
SetPropertyIdentifierMappingsIfNameConflicts void
WriteActionImport void
WriteBoundActionAsExtension void
WriteBoundActionInEntityType void
WriteBoundFunctionInEntityTypeReturnCollectionResult void
WriteBoundFunctionInEntityTypeReturnSingleResult void
WriteBoundFunctionReturnCollectionResultAsExtension void
WriteBoundFunctionReturnSingleResultAsExtension void
WriteBoundOperations void
WriteByKeyMethods void
WriteCastToMethods void
WriteClassEndForEntityContainer void
WriteClassEndForEntityContainerConstructor void
WriteClassEndForStructuredType void
WriteClassStartForEntityContainer void
WriteClassStartForStructuredType void
WriteComplexType void
WriteConstructorForSingleType void
WriteContextAddToEntitySetMethod void
WriteContextEntitySetProperty void
WriteContextSingletonProperty void
WriteDeclarationEndForStaticCreateMethod void
WriteDeclarationStartForStaticCreateMethod void
WriteEntityContainer void
WriteEntityContainerConstructor void
WriteEntityHasStreamAttribute void
WriteEntitySetAttribute void
WriteEntityType void
WriteEntityTypeAttribute void
WriteEnumDeclaration void
WriteEnumEnd void
WriteEnumFlags void
WriteEnumType void
WriteExtensionMethodsEnd void
WriteExtensionMethodsStart void
WriteFileHeader void
WriteFunctionImportReturnCollectionResult void
WriteFunctionImportReturnSingleResult void
WriteGeneratedEdmModel void
WriteINotifyPropertyChangedImplementation void
WriteInitializeResolveName void
WriteInitializeResolveType void
WriteKeyAsSegmentUrlConvention void
WriteKeyPropertiesCommentAndAttribute void
WriteMemberForEnumType void
WriteMembersForEnumType void
WriteMethodEndForResolveNameFromType void
WriteMethodEndForResolveTypeFromName void
WriteMethodEndForStaticCreateMethod void
WriteMethodStartForEntityContainerConstructor void
WriteMethodStartForResolveNameFromType void
WriteMethodStartForResolveTypeFromName void
WriteNamespace void
WriteNamespaceEnd void
WriteNamespaceStart void
WriteNamespaces void
WriteParameterCommentForStaticCreateMethod void
WriteParameterForStaticCreateMethod void
WriteParameterNullCheckForStaticCreateMethod void
WritePropertiesForSingleType void
WritePropertiesForStructuredType void
WritePropertyForStructuredType void
WritePropertyRootNamespace void
WritePropertyValueAssignmentForStaticCreateMethod void
WriteResolveNameFromType void
WriteResolveNamespace void
WriteResolveType void
WriteResolveTypeFromName void
WriteStaticCreateMethodParameters void
WriteStructurdTypeDeclaration void
WriteSummaryCommentForEnumType void
WriteSummaryCommentForStaticCreateMethod void
WriteSummaryCommentForStructuredType void
WriteTypeStaticCreateMethod void

Public Methods

Method Description
ODataClientTemplate ( CodeGenerationContext context ) : System

Creates an instance of the ODataClientTemplate.

TransformText ( ) : string

Generates code for the OData client.

Private Methods

Method Description
CheckMethodsInBaseClass ( IEdmStructuredType structuredType, IEdmOperation operation, Dictionary boundOperationsMap ) : bool
GetElementTypeName ( IEdmEntityType elementType, IEdmEntityContainer container ) : string
GetFixedName ( string originalName ) : string
GetParameterExpressionString ( IEdmOperationParameter param, string typeName ) : string
GetParameterStrings ( bool isBound, bool isAction, IEdmOperationParameter parameters, string &parameterString, string &parameterTypes, string &parameterExpressionString, string &parameterValues, bool &useEntityReference ) : void
GetSourceOrReturnTypeName ( IEdmTypeReference typeReference ) : string
HasBoundOperations ( IEnumerable operations ) : bool
SetPropertyIdentifierMappingsIfNameConflicts ( string typeName, IEdmStructuredType structuredType ) : void
WriteActionImport ( string actionName, string originalActionName, string returnTypeName, string parameters, string parameterValues ) : void
WriteBoundActionAsExtension ( string actionName, string originalActionName, string boundSourceType, string returnTypeName, string parameters, string fullNamespace, string parameterValues ) : void
WriteBoundActionInEntityType ( bool hideBaseMethod, string actionName, string originalActionName, string returnTypeName, string parameters, string fullNamespace, string parameterValues ) : void
WriteBoundFunctionInEntityTypeReturnCollectionResult ( bool hideBaseMethod, string functionName, string originalFunctionName, string returnTypeName, string parameters, string fullNamespace, string parameterValues, bool isComposable, bool useEntityReference ) : void
WriteBoundFunctionInEntityTypeReturnSingleResult ( bool hideBaseMethod, string functionName, string originalFunctionName, string returnTypeName, string parameters, string fullNamespace, string parameterValues, bool isComposable, bool isReturnEntity, bool useEntityReference ) : void
WriteBoundFunctionReturnCollectionResultAsExtension ( string functionName, string originalFunctionName, string boundTypeName, string returnTypeName, string parameters, string fullNamespace, string parameterValues, bool isComposable, bool useEntityReference ) : void
WriteBoundFunctionReturnSingleResultAsExtension ( string functionName, string originalFunctionName, string boundTypeName, string returnTypeName, string parameters, string fullNamespace, string parameterValues, bool isComposable, bool isReturnEntity, bool useEntityReference ) : void
WriteBoundOperations ( IEdmStructuredType structuredType, Dictionary boundOperationsMap ) : void
WriteByKeyMethods ( string entityTypeName, string returnTypeName, IEnumerable keys, string keyParameters, string keyDictionaryItems ) : void
WriteCastToMethods ( string baseTypeName, string derivedTypeName, string derivedTypeFullName, string returnTypeName ) : void
WriteClassEndForEntityContainer ( ) : void
WriteClassEndForEntityContainerConstructor ( ) : void
WriteClassEndForStructuredType ( ) : void
WriteClassStartForEntityContainer ( string originalContainerName, string containerName, string fixedContainerName ) : void
WriteClassStartForStructuredType ( string abstractModifier, string typeName, string originalTypeName, string baseTypeName ) : void
WriteComplexType ( IEdmComplexType complexType, Dictionary boundOperationsMap ) : void
WriteConstructorForSingleType ( string singleTypeName, string baseTypeName ) : void
WriteContextAddToEntitySetMethod ( string entitySetName, string originalEntitySetName, string typeName, string parameterName ) : void
WriteContextEntitySetProperty ( string entitySetName, string entitySetFixedName, string originalEntitySetName, string entitySetElementTypeName, bool inContext = true ) : void
WriteContextSingletonProperty ( string singletonName, string singletonFixedName, string originalSingletonName, string singletonElementTypeName, bool inContext = true ) : void
WriteDeclarationEndForStaticCreateMethod ( string typeName, string instanceName ) : void
WriteDeclarationStartForStaticCreateMethod ( string typeName, string fixedTypeName ) : void
WriteEntityContainer ( IEdmEntityContainer container, string fullNamespace ) : void
WriteEntityContainerConstructor ( IEdmEntityContainer container ) : void
WriteEntityHasStreamAttribute ( ) : void
WriteEntitySetAttribute ( string entitySetName ) : void
WriteEntityType ( IEdmEntityType entityType, Dictionary boundOperationsMap ) : void
WriteEntityTypeAttribute ( ) : void
WriteEnumDeclaration ( string enumName, string originalEnumName, string underlyingType ) : void
WriteEnumEnd ( ) : void
WriteEnumFlags ( ) : void
WriteEnumType ( IEdmEnumType enumType ) : void
WriteExtensionMethodsEnd ( ) : void
WriteExtensionMethodsStart ( ) : void
WriteFileHeader ( ) : void
WriteFunctionImportReturnCollectionResult ( string functionName, string originalFunctionName, string returnTypeName, string parameters, string parameterValues, bool isComposable, bool useEntityReference ) : void
WriteFunctionImportReturnSingleResult ( string functionName, string originalFunctionName, string returnTypeName, string parameters, string parameterValues, bool isComposable, bool isReturnEntity, bool useEntityReference ) : void
WriteGeneratedEdmModel ( string escapedEdmxString ) : void
WriteINotifyPropertyChangedImplementation ( ) : void
WriteInitializeResolveName ( ) : void
WriteInitializeResolveType ( ) : void
WriteKeyAsSegmentUrlConvention ( ) : void
WriteKeyPropertiesCommentAndAttribute ( IEnumerable keyProperties, string keyString ) : void
WriteMemberForEnumType ( string member, string originalMemberName, bool last ) : void
WriteMembersForEnumType ( IEnumerable members ) : void
WriteMethodEndForResolveNameFromType ( bool modelHasInheritance ) : void
WriteMethodEndForResolveTypeFromName ( ) : void
WriteMethodEndForStaticCreateMethod ( string instanceName ) : void
WriteMethodStartForEntityContainerConstructor ( string containerName, string fixedContainerName ) : void
WriteMethodStartForResolveNameFromType ( string containerName, string fullNamespace ) : void
WriteMethodStartForResolveTypeFromName ( ) : void
WriteNamespace ( string fullNamespace ) : void
WriteNamespaceEnd ( ) : void
WriteNamespaceStart ( string fullNamespace ) : void
WriteNamespaces ( ) : void
WriteParameterCommentForStaticCreateMethod ( string parameterName, string propertyName ) : void
WriteParameterForStaticCreateMethod ( string parameterTypeName, string parameterName, string parameterSeparater ) : void
WriteParameterNullCheckForStaticCreateMethod ( string parameterName ) : void
WritePropertiesForSingleType ( IEnumerable properties ) : void
WritePropertiesForStructuredType ( IEnumerable properties ) : void
WritePropertyForStructuredType ( string propertyType, string originalPropertyName, string propertyName, string fixedPropertyName, string privatePropertyName, string propertyInitializationValue, bool writeOnPropertyChanged ) : void
WritePropertyRootNamespace ( string containerName, string fullNamespace ) : void
WritePropertyValueAssignmentForStaticCreateMethod ( string instanceName, string propertyName, string parameterName ) : void
WriteResolveNameFromType ( string containerName, string fullNamespace ) : void
WriteResolveNamespace ( string typeName, string fullNamespace, string languageDependentNamespace ) : void
WriteResolveType ( string fullNamespace, string languageDependentNamespace ) : void
WriteResolveTypeFromName ( ) : void
WriteStaticCreateMethodParameters ( string>.KeyValuePair propertyToParameterPairs ) : void
WriteStructurdTypeDeclaration ( IEdmStructuredType structuredType, string baseEntityType, string typeNameSuffix = null ) : void
WriteSummaryCommentForEnumType ( string enumName ) : void
WriteSummaryCommentForStaticCreateMethod ( string typeName ) : void
WriteSummaryCommentForStructuredType ( string typeName ) : void
WriteTypeStaticCreateMethod ( string typeName, IEdmStructuredType structuredType ) : void

Method Details

ODataClientTemplate() public method

Creates an instance of the ODataClientTemplate.
public ODataClientTemplate ( CodeGenerationContext context ) : System
context CodeGenerationContext The code generation context.
return System

TransformText() public method

Generates code for the OData client.
public TransformText ( ) : string
return string

Property Details

Context protected_oe property

The code generation context.
protected CodeGenerationContext Context
return CodeGenerationContext

IdentifierMappings protected_oe property

The Dictionary to store identifier mappings when there are duplicate names between properties and Entity/Complex types
protected Dictionary IdentifierMappings
return string>.Dictionary

SingleSuffix protected_oe property

protected string SingleSuffix
return string