public RedisInterprocessMessageReceiver(IAppRedisConfiguration configuration, IInterprocessIdentity interprocessIdentity, IMessageDeliverer messageDeliverer, ILogger logger) { _configuration = configuration; _interprocessIdentity = interprocessIdentity; _messageDeliverer = messageDeliverer; _logger = logger; _client = new StackExchangeRedisCacheClient(new NewtonsoftSerializer(), _configuration.ToRedisConfiguration()); _handlers = new Dictionary <Type, MessageReceivedHandler>(); }
/// <summary> /// Constructs a server with the specified configuration that /// listens to the given ports. /// </summary> /// <param name="config">the configuration, or <code>null</code> for default</param> /// <param name="ports">the ports to bind to</param> public CoapServer(ICoapConfig config, params Int32[] ports) { _config = config ?? CoapConfig.Default; _root = new RootResource(this); _deliverer = new ServerMessageDeliverer(_config, _root); Resource wellKnown = new Resource(".well-known", false); wellKnown.Add(new DiscoveryResource(_root)); _root.Add(wellKnown); foreach (Int32 port in ports) { Bind(port); } }
public CoapServer(ICoapConfig config, IResource rootResource, System.Net.EndPoint endPoint, params int[] ports) { Config = config ?? CoapConfig.Default; _root = rootResource ?? new RootResource(this); _deliverer = new ServerMessageDeliverer(Config, _root); Resource wellKnown = new Resource(".well-known", false); wellKnown.Add(new DiscoveryResource(_root)); _root.Add(wellKnown); _endPointSupplied = endPoint; foreach (int port in ports) { Bind(port); } }
public Client(int port) { _MessageDeliverer = _CoapServer.MessageDeliverer; _CoapServer.MessageDeliverer = this; //_EndPoint = new CoAPEndPoint(port, CoapConfig.Default); //_EndPoint = new CoAPEndPoint(new FlowClientSecureChannel(port), CoapConfig.Default); //_EndPoint = new CoAPEndPoint(new FlowChannel(port), CoapConfig.Default); _Channel = new FlowClientChannel(port); UseCertificateFile("Client.pem"); _EndPoint = new CoAPEndPoint(_Channel, CoapConfig.Default); _CoapServer.AddEndPoint(_EndPoint); _CoapServer.Add(_SecurityResources); _CoapServer.Add(_ServerResources); _CoapServer.Add(_BootsrapComplete); _Root = _BootsrapComplete.Parent; _Timer.Interval = 30000; _Timer.Elapsed += new System.Timers.ElapsedEventHandler(_Timer_Elapsed); }
public MockMessagePump(Type[] layers, ICoapConfig configClient = null, ICoapConfig configServer = null) { if (configClient == null) { configClient = CoapConfig.Default; } if (configServer == null) { configServer = CoapConfig.Default; } ClientStack = new MockStack(layers, configClient) { StackName = "Client" }; MockStack stack = new MockStack(layers, configServer) { StackName = "Server #1" }; ServerStacks.Add(ServerAddress, new List <MockStack>() { stack }); stack.MyEndPoint = new MockEndpoint(this, stack, ServerAddress); ServerStacks.Add(MulticastAddress, new List <MockStack>() { stack }); MockDeliverer serverDeliverer = new MockDeliverer() { IsServer = true, Pump = this }; stack.MyEndPoint.MessageDeliverer = serverDeliverer; stack = new MockStack(layers, configServer) { StackName = "Server #2" }; ServerStacks.Add(ServerAddress2, new List <MockStack>() { stack }); stack.MyEndPoint = new MockEndpoint(this, stack, ServerAddress2); ServerStacks[MulticastAddress].Add(stack); serverDeliverer = new MockDeliverer() { IsServer = true, Pump = this }; stack.MyEndPoint.MessageDeliverer = serverDeliverer; ClientEndpoint = new MockEndpoint(this, ClientStack, ClientAddress); ClientDeliverer = new MockDeliverer() { IsServer = false, Pump = this }; ClientEndpoint.MessageDeliverer = ClientDeliverer; }