private static void GenerateEnumFile(EnumGenerationParams pParams, MessageDefinitions.Data.Enum enumeration, TypeInfo typeInfo, CodeGeneratorOptions options, CodeDomProvider codeProvider) { string filename = TypeInfoHelper.GetFilename(typeInfo); String filePath = Path.Combine(pParams.OutputPath, filename); CodeCompileUnit unit = EnumGeneratorHelper.CreateCodeCompileUnit(typeInfo, enumeration); codeProvider.GenerateCodeFromCompileUnit(unit, options, filePath); }
private static void GenerateMessageClassFile(MessageGenerationParams pParams, MessageDefinitions.Data.Message message, CodeGeneratorOptions options, CodeDomProvider codeProvider, IDictionary <MessageDefinitions.Data.Enum, TypeInfo> enumTypeInfoByName) { TypeInfo typeInfo = TypeInfoHelper.GetTypeInfo(pParams.Namespace, message); string filename = TypeInfoHelper.GetFilename(typeInfo); String filePath = Path.Combine(pParams.OutputPath, filename); CodeCompileUnit unit = MessageGeneratorHelper.CreateCodeCompileUnit(typeInfo, message, pParams.BaseClassTypeInfo, pParams.MessageTypeEnumTypeInfo, enumTypeInfoByName); codeProvider.GenerateCodeFromCompileUnit(unit, options, filePath); }
private static void GenerateMessageTypeEnum(CodeDomProvider codeProvider, CodeGeneratorOptions options, TypeInfo messageTypeEnumTypeInfo, string outputPath, IEnumerable <Message> messages) { MessageTypeEnumGenerationParams typeEnumGenerationParams = new MessageTypeEnumGenerationParams(); string messageTypeEnumFilename = TypeInfoHelper.GetFilename(messageTypeEnumTypeInfo); typeEnumGenerationParams.OutputFilePath = Path.Combine(outputPath, messageTypeEnumFilename); typeEnumGenerationParams.TypeInfo = messageTypeEnumTypeInfo; GenerateMessageTypeEnum(codeProvider, options, typeEnumGenerationParams, messages); }
private static void GenerateCrcExtraProvider(CodeDomProvider codeProvider, CodeGeneratorOptions options, TypeInfo crcExtraProviderClassTypeInfo, IEnumerable <Message> messages, string outputPath, TypeInfo messageTypeEnumTypeInfo) { CrcExtraProviderGenerationParams messageFactoryGenerationParams = new CrcExtraProviderGenerationParams(); string filename = TypeInfoHelper.GetFilename(crcExtraProviderClassTypeInfo); messageFactoryGenerationParams.OutputFilePath = Path.Combine(outputPath, filename); messageFactoryGenerationParams.TypeInfo = crcExtraProviderClassTypeInfo; messageFactoryGenerationParams.MessageTypeEnumTypeInfo = messageTypeEnumTypeInfo; GenerateCrcExtraProvider(codeProvider, options, messageFactoryGenerationParams, messages); }
private static void GenerateMessageFactory(CodeDomProvider codeProvider, CodeGeneratorOptions options, TypeInfo serializerFactoryClassTypeInfo, IEnumerable <Message> messages, string outputPath, TypeInfo messageTypeEnumTypeInfo, TypeInfo messageInterfaceTypeInfo) { MessageFactoryGenerationParams messageFactoryGenerationParams = new MessageFactoryGenerationParams(); string factoryFilename = TypeInfoHelper.GetFilename(serializerFactoryClassTypeInfo); messageFactoryGenerationParams.OutputFilePath = Path.Combine(outputPath, factoryFilename); messageFactoryGenerationParams.TypeInfo = serializerFactoryClassTypeInfo; messageFactoryGenerationParams.CommonMessagesNamespace = ConstantHelper.Namespaces.Root_Messages_Common; messageFactoryGenerationParams.MessageTypeEnumTypeInfo = messageTypeEnumTypeInfo; messageFactoryGenerationParams.MessageInterfaceTypeInfo = messageInterfaceTypeInfo; GenerateMessageFactory(codeProvider, options, messageFactoryGenerationParams, messages); }
private static void GenerateSerializerClassFile(SerializerGenerationParams pParams, Message message, CodeGeneratorOptions options, CodeDomProvider codeProvider) { string serializerClassName = NameHelper.GetSerializerClassName(message); TypeInfo typeInfo = new TypeInfo() { Name = serializerClassName, Namespace = pParams.Namespace }; string filename = TypeInfoHelper.GetFilename(typeInfo); String filePath = Path.Combine(pParams.OutputPath, filename); CodeCompileUnit unit = SerializerGeneratorHelper.CreateCodeCompileUnit(typeInfo, message, pParams.SerializerInterfaceTypeInfo, pParams.BaseClassTypeInfo, pParams.MessagesNamespace); codeProvider.GenerateCodeFromCompileUnit(unit, options, filePath); }