public override SessionPrx create(string name, Ice.Current current)
    {
        var session = new SessionI(name);
        var proxy   = SessionPrxHelper.uncheckedCast(current.adapter.addWithUUID(session));

        //
        // Remove endpoints to ensure that calls are collocated-only
        // This way, if we invoke on the proxy during shutdown, the invocation fails immediately
        // without attempting to establish any connection
        //
        var collocProxy = SessionPrxHelper.uncheckedCast(proxy.ice_endpoints(new Ice.Endpoint[0]));

        //
        // Never close this connection from the client and turn on heartbeats with a timeout of 30s
        //
        current.con.setACM(30, Ice.ACMClose.CloseOff, Ice.ACMHeartbeat.HeartbeatAlways);
        current.con.setCloseCallback(_ =>
        {
            try
            {
                collocProxy.destroy();
                Console.Out.WriteLine("Cleaned up dead client.");
            }
            catch (Ice.LocalException)
            {
                // The client already destroyed this session, or the server is shutting down
            }
        });
        return(proxy);
    }
Exemple #2
0
    public override SessionPrx create(string name, Ice.Current c)
    {
        var session = new SessionI(name);
        var proxy   = SessionPrxHelper.uncheckedCast(c.adapter.addWithUUID(session));

        _reaper.add(proxy, session);
        return(proxy);
    }
 public static SessionPrx read__(IceInternal.BasicStream is__)
 {
     Ice.ObjectPrx proxy = is__.readProxy();
     if (proxy != null)
     {
         SessionPrxHelper result = new SessionPrxHelper();
         result.copyFrom__(proxy);
         return(result);
     }
     return(null);
 }
 public static SessionPrx read(Ice.InputStream inS__)
 {
     Ice.ObjectPrx proxy = inS__.readProxy();
     if (proxy != null)
     {
         SessionPrxHelper result = new SessionPrxHelper();
         result.copyFrom__(proxy);
         return(result);
     }
     return(null);
 }
            public static SessionPrx uncheckedCast(Ice.ObjectPrx b, string f)
            {
                if (b == null)
                {
                    return(null);
                }
                Ice.ObjectPrx    bb = b.ice_facet(f);
                SessionPrxHelper h  = new SessionPrxHelper();

                h.copyFrom__(bb);
                return(h);
            }
            public static SessionPrx checkedCast(Ice.ObjectPrx b, _System.Collections.Generic.Dictionary <string, string> ctx)
            {
                if (b == null)
                {
                    return(null);
                }
                SessionPrx r = b as SessionPrx;

                if ((r == null) && b.ice_isA(ice_staticId(), ctx))
                {
                    SessionPrxHelper h = new SessionPrxHelper();
                    h.copyFrom__(b);
                    r = h;
                }
                return(r);
            }
            public static SessionPrx checkedCast(Ice.ObjectPrx b)
            {
                if (b == null)
                {
                    return(null);
                }
                SessionPrx r = b as SessionPrx;

                if ((r == null) && b.ice_isA(ice_staticId()))
                {
                    SessionPrxHelper h = new SessionPrxHelper();
                    h.copyFrom__(b);
                    r = h;
                }
                return(r);
            }
            public static SessionPrx uncheckedCast(Ice.ObjectPrx b)
            {
                if (b == null)
                {
                    return(null);
                }
                SessionPrx r = b as SessionPrx;

                if (r == null)
                {
                    SessionPrxHelper h = new SessionPrxHelper();
                    h.copyFrom__(b);
                    r = h;
                }
                return(r);
            }
 public static SessionPrx checkedCast(Ice.ObjectPrx b, string f, _System.Collections.Generic.Dictionary <string, string> ctx)
 {
     if (b == null)
     {
         return(null);
     }
     Ice.ObjectPrx bb = b.ice_facet(f);
     try
     {
         if (bb.ice_isA(ice_staticId(), ctx))
         {
             SessionPrxHelper h = new SessionPrxHelper();
             h.copyFrom__(bb);
             return(h);
         }
     }
     catch (Ice.FacetNotExistException)
     {
     }
     return(null);
 }
 public static SessionPrx checkedCast(Ice.ObjectPrx b, string f)
 {
     if (b == null)
     {
         return(null);
     }
     Ice.ObjectPrx bb = b.ice_facet(f);
     try
     {
         if (bb.ice_isA(ice_staticId()))
         {
             SessionPrxHelper h = new SessionPrxHelper();
             h.copyFrom__(bb);
             return(h);
         }
     }
     catch (Ice.FacetNotExistException)
     {
     }
     return(null);
 }
 public static SessionPrx checkedCast(Ice.ObjectPrx b)
 {
     if(b == null)
     {
         return null;
     }
     SessionPrx r = b as SessionPrx;
     if((r == null) && b.ice_isA(ice_staticId()))
     {
         SessionPrxHelper h = new SessionPrxHelper();
         h.copyFrom__(b);
         r = h;
     }
     return r;
 }
 public static SessionPrx checkedCast(Ice.ObjectPrx b, string f)
 {
     if(b == null)
     {
         return null;
     }
     Ice.ObjectPrx bb = b.ice_facet(f);
     try
     {
         if(bb.ice_isA(ice_staticId()))
         {
             SessionPrxHelper h = new SessionPrxHelper();
             h.copyFrom__(bb);
             return h;
         }
     }
     catch(Ice.FacetNotExistException)
     {
     }
     return null;
 }
 public static SessionPrx checkedCast(Ice.ObjectPrx b, string f, _System.Collections.Generic.Dictionary<string, string> ctx)
 {
     if(b == null)
     {
         return null;
     }
     Ice.ObjectPrx bb = b.ice_facet(f);
     try
     {
         if(bb.ice_isA(ice_staticId(), ctx))
         {
             SessionPrxHelper h = new SessionPrxHelper();
             h.copyFrom__(bb);
             return h;
         }
     }
     catch(Ice.FacetNotExistException)
     {
     }
     return null;
 }
 public static SessionPrx uncheckedCast(Ice.ObjectPrx b)
 {
     if(b == null)
     {
         return null;
     }
     SessionPrx r = b as SessionPrx;
     if(r == null)
     {
         SessionPrxHelper h = new SessionPrxHelper();
         h.copyFrom__(b);
         r = h;
     }
     return r;
 }
 public static SessionPrx uncheckedCast(Ice.ObjectPrx b, string f)
 {
     if(b == null)
     {
         return null;
     }
     Ice.ObjectPrx bb = b.ice_facet(f);
     SessionPrxHelper h = new SessionPrxHelper();
     h.copyFrom__(bb);
     return h;
 }
 public static SessionPrx checkedCast(Ice.ObjectPrx b, _System.Collections.Generic.Dictionary<string, string> ctx)
 {
     if(b == null)
     {
         return null;
     }
     SessionPrx r = b as SessionPrx;
     if((r == null) && b.ice_isA(ice_staticId(), ctx))
     {
         SessionPrxHelper h = new SessionPrxHelper();
         h.copyFrom__(b);
         r = h;
     }
     return r;
 }
 public static SessionPrx read(Ice.InputStream inS__)
 {
     Ice.ObjectPrx proxy = inS__.readProxy();
     if(proxy != null)
     {
         SessionPrxHelper result = new SessionPrxHelper();
         result.copyFrom__(proxy);
         return result;
     }
     return null;
 }
 public static SessionPrx read__(IceInternal.BasicStream is__)
 {
     Ice.ObjectPrx proxy = is__.readProxy();
     if(proxy != null)
     {
         SessionPrxHelper result = new SessionPrxHelper();
         result.copyFrom__(proxy);
         return result;
     }
     return null;
 }