예제 #1
0
        public YZXCMessagingNode(
            YZXMessagingType messagingtype     = YZXMessagingType.Tcp,
            YZXSerializerType serializertype   = YZXSerializerType.Xml,
            YZXMessagesFactoryType factorytype = YZXMessagesFactoryType.Duplex)
        {
            DSenderFactory = new DuplexTypedMessagesFactory();

            DReceiverFactory = new DuplexTypedMessagesFactory();

            switch (messagingtype)
            {
            case YZXMessagingType.Tcp:
                UnderlyingMessaging = new TcpMessagingSystemFactory();
                break;

            case YZXMessagingType.Http:
                UnderlyingMessaging = new HttpMessagingSystemFactory();
                break;

            case YZXMessagingType.WebSocket:
                UnderlyingMessaging = new WebSocketMessagingSystemFactory();
                break;
            }

            switch (serializertype)
            {
            case YZXSerializerType.Xml:
                serializer = new XmlStringSerializer();
                break;

            case YZXSerializerType.Json:
                serializer = new DataContractJsonStringSerializer();
                break;
            }
        }
예제 #2
0
        public YZXMessagingServer(string self,
                                  YZXMessagesFactoryType messagetype = YZXMessagesFactoryType.Duplex)
        {
            Self = self;

            ConfigReceiver();

            AttachInputChannel();
        }
예제 #3
0
        public YZXMessagingClient(string partner,
                                  YZXMessagesFactoryType messagetype = YZXMessagesFactoryType.Duplex)
        {
            Partner = partner;

            DSender = DSenderFactory.CreateDuplexTypedMessageSender <ResponseType, RequestType>();

            anOutputChannel = UnderlyingMessaging.CreateDuplexOutputChannel(Partner);



            ConfigSender();

            AttachOutputChannel();
        }