private ISerializer CreateSerializer(HttpFunctionDefinition httpFunctionDefinition) { if (httpFunctionDefinition.SerializerNamingStrategyType != null) { NamingStrategy serializerNamingStrategy = (NamingStrategy)Activator.CreateInstance(httpFunctionDefinition.SerializerNamingStrategyType); NamingStrategy deserializerNamingStrategy = (NamingStrategy)Activator.CreateInstance(httpFunctionDefinition.DeserializerNamingStrategyType); ISerializer serializer = new NamingStrategyJsonSerializer(deserializerNamingStrategy, serializerNamingStrategy); return(serializer); } return((ISerializer)_serviceProvider.GetRequiredService(httpFunctionDefinition.CommandDeserializerType)); }
private ISerializer CreateSerializer(AbstractFunctionDefinition functionDefinition) { ISerializer serializer; if (functionDefinition.SerializerNamingStrategyType != null) { var deserializerNamingStrategy = (NamingStrategy) Activator.CreateInstance(functionDefinition.DeserializerNamingStrategyType); var serializerNamingStrategy = (NamingStrategy) Activator.CreateInstance(functionDefinition.SerializerNamingStrategyType); serializer = new NamingStrategyJsonSerializer(deserializerNamingStrategy, serializerNamingStrategy); } else { serializer = (FunctionMonkey.Abstractions.ISerializer) ServiceProvider.GetService(functionDefinition.CommandDeserializerType); } return(serializer); }