Esempio n. 1
0
        internal ServiceSubscription(WrappedServiceSubscription subscription)
        {
            _subscription = subscription;
            var director = new WrappedServiceSubscriptionDirectorNET(this);
            int id       = RRObjectHeap.AddObject(director);

            subscription.SetRRDirector(director, id);
        }
Esempio n. 2
0
            public override void ClientConnectFailed(WrappedServiceSubscription subscription,
                                                     WrappedServiceSubscriptionClientID id, vectorstring url,
                                                     HandlerErrorInfo err)
            {
                var s = (ServiceSubscription)subscription1.Target;

                if (s == null)
                {
                    return;
                }
                if (s.ClientConnectFailed == null)
                {
                    return;
                }

                s.ClientConnectFailed(s, new ServiceSubscriptionClientID(id), url.ToArray(),
                                      RobotRaconteurExceptionUtil.ErrorInfoToException(err));
            }
Esempio n. 3
0
            public override void ClientDisconnected(WrappedServiceSubscription subscription,
                                                    WrappedServiceSubscriptionClientID id, WrappedServiceStub client)
            {
                var s = (ServiceSubscription)subscription1.Target;

                if (s == null)
                {
                    return;
                }
                if (s.ClientDisconnected == null)
                {
                    return;
                }

                var client2 = s.DeleteClientStub(client);

                try
                {
                    s.ClientDisconnected(s, new ServiceSubscriptionClientID(id), client2);
                }
                catch
                {}
            }