IObjectConverter CreateMissingConverter(Type type)
        {
            var implementationType = type.GetTypeInfo().IsInterface ? _implementationBuilder.GetImplementationType(type) : type;
            var converterType      = typeof(DynamicObjectConverter <,>).MakeGenericType(type, implementationType);

            return((IObjectConverter)Activator.CreateInstance(converterType, this));
        }
        public override object ReadJson(JsonReader reader, Type objectType, object existingValue,
                                        JsonSerializer serializer)
        {
            Type proxyType = _builder.GetImplementationType(objectType);

            return(serializer.Deserialize(reader, proxyType));
        }
        IObjectConverter CreateMissingConverter(Type type)
        {
            Type implementationType = _implementationBuilder.GetImplementationType(type);
            Type converterType      = typeof(DynamicObjectConverter <,>).MakeGenericType(type, implementationType);

            return((IObjectConverter)Activator.CreateInstance(converterType, this));
        }
Exemple #4
0
        public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
        {
            var proxyType = _builder.GetImplementationType(typeof(IRegisterOrder));
            var actual    = serializer.Deserialize <MyOrder>(reader);
            var msg       = new MyMessage
            {
                Message            = actual,
                DestinationAddress = "sb://janysbtest.servicebus.windows.net/MassTransitDemo.Messaging.Contract.Commands/IRegisterOrder",
                MessageType        = new[] {
                    "urn:message:MassTransitDemo.Messaging.Contract.Commands:IRegisterOrder",
                    "urn:message:MassTransitDemo.Registration.Service:MyOrder"
                },
                Headers        = new Dictionary <string, object>(),
                MessageId      = actual.Id.ToString(),
                CorrelationId  = actual.Id.ToString(),
                ConversationId = actual.Id.ToString(),
                SourceAddress  = "sb://janysbtest.servicebus.windows.net/PCJANY01_MassTransitDemoPublisher_bus_zazoyybntybbmprtbdk353wobf?express=true&autodelete=300"
            };

            return(msg);
        }
Exemple #5
0
 public Type GetImplementationType <T>()
     where T : TSchema
 {
     return(_implementationBuilder.GetImplementationType(typeof(T)));
 }
Exemple #6
0
 Type ISchemaLayoutBuilder <TSchema> .GetImplementationType <T>()
 {
     return(_implementationBuilder.GetImplementationType(typeof(T)));
 }