コード例 #1
0
ファイル: RabbitChannel.cs プロジェクト: yonglehou/Symbiote
 public RabbitChannel(IChannelProxy proxy, IMessageSerializer serializer, ChannelDefinition definition,
                      IDispatcher dispatcher)
 {
     Definition        = definition;
     Proxy             = proxy;
     Serializer        = serializer;
     MessageDispatcher = dispatcher;
 }
コード例 #2
0
 public ChannelProxy(IModel channel, string protocol, ChannelDefinition channelDefinition)
 {
     _lock              = new object();
     _channel           = channel;
     _protocol          = protocol;
     _channelDefinition = channelDefinition;
     if (_channelDefinition.Transactional)
     {
         channel.TxSelect();
     }
     //_onReturn = Assimilate.GetInstanceOf<Action<IModel, BasicReturnEventArgs>>();
     //_channel.BasicReturn += new BasicReturnEventHandler( _onReturn );
     _channel.ModelShutdown += ChannelShutdown;
     _deliveryMode           =
         (byte)(ChannelDefinition.PersistentDelivery ? DeliveryMode.Persistent : DeliveryMode.Volatile);
     SetPropertyTemplate();
 }
コード例 #3
0
 public ChannelConfigurator()
 {
     ChannelDefinition = new ChannelDefinition();
 }
コード例 #4
0
 public IChannelProxy GetProxyForExchange( ChannelDefinition channelDefinition )
 {
     channelDefinition.CreateOnBroker( ConnectionManager );
     return new ChannelProxy( ConnectionManager.GetConnection( channelDefinition.Broker ).CreateModel(),
                              ConnectionManager.Protocol, channelDefinition );
 }
コード例 #5
0
 public IChannelProxy GetProxyForExchange(ChannelDefinition channelDefinition)
 {
     channelDefinition.CreateOnBroker(ConnectionManager);
     return(new ChannelProxy(ConnectionManager.GetConnection(channelDefinition.Broker).CreateModel(),
                             ConnectionManager.Protocol, channelDefinition));
 }