internal static ExCommsServerProxy Get(IExCommsServerCallback callbackInstance)
        {
            using (ILogMethod method = Log.LogMethod("ExCommsServerProxyFactory", "Get"))
            {
                ExCommsServerProxy result = default(ExCommsServerProxy);

                try
                {
                    result = ExCommsGenericProxy.GetService <ExCommsServerProxy, IExCommsServer>(
                        (i) =>
                    {
                        if (callbackInstance != null)
                        {
                            return(new ExCommsServerProxy(i, callbackInstance));
                        }
                        else
                        {
                            return(new ExCommsServerProxy(i));
                        }
                    },
                        (b, u) =>
                    {
                        if (callbackInstance != null)
                        {
                            return(new ExCommsServerProxy(callbackInstance, b, u, null));
                        }
                        else
                        {
                            return(new ExCommsServerProxy(b, u));
                        }
                    });
                }
                catch (Exception ex)
                {
                    method.Exception(ex);
                }

                return(result);
            }
        }
        protected override void SubscribeInternal(WcfClientChannel <IExCommsServer> client)
        {
            ExCommsServerProxy proxy = client as ExCommsServerProxy;

            proxy.Subscribe(_callbackType, FillSubscriptionEntity(_subscribeEntity));
        }