public static ISubscriber NewSubscriber(string cMac, string cIP, int cPort, IDuplexChannelCallback clientCallback, bool isManager = false) { if (_instance == null) { lock (_syncLock) { if (_instance == null) { _instance = new Subscriber(cMac, cIP, cPort, clientCallback, isManager); } } } return _instance; //ISubscriber suber = new Subscriber(cMac, cIP, cPort, clientCallback, isManager); //ProxyGenerator generator = new ProxyGenerator(); //ISubscriber subscriber = (ISubscriber)generator.CreateInterfaceProxyWithTarget(typeof(ISubscriber), suber, new InterceptorProxy()); //suber = subscriber; //return suber; }
public void Ping(Guid guid) { IDuplexChannelCallback callback = OperationContext.Current.GetCallbackChannel <IDuplexChannelCallback>(); callback.OnPingCallback(guid); }
private Subscriber(string cMac, string cIP, int cPort, IDuplexChannelCallback clientCallback, bool isManager = false) : this() { this.Mac = cMac; this.IP = cIP; this.Port = cPort; this.Callback = clientCallback; this.IsManager = isManager; }