示例#1
0
        public new void Abort(System.Exception ex)
        {
            Ice.InvocationMode mode = Proxy.IceReference.InvocationMode;

            Debug.Assert(mode != Ice.InvocationMode.BatchOneway &&
                         mode != Ice.InvocationMode.BatchDatagram); // not implemented
            base.Abort(ex);
        }
示例#2
0
        protected void Invoke(string operation, bool synchronous)
        {
            Synchronous = synchronous;
            Ice.InvocationMode mode = Proxy.IceReference.GetMode();
            if (mode == Ice.InvocationMode.BatchOneway || mode == Ice.InvocationMode.BatchDatagram)
            {
                Debug.Assert(false); // not implemented
                return;
            }

            //
            // NOTE: invokeImpl doesn't throw so this can be called from the
            // try block with the catch block calling abort() in case of an
            // exception.
            //
            InvokeImpl(true); // userThread = true
        }
示例#3
0
        protected void Invoke(bool synchronous)
        {
            Synchronous = synchronous;
            Ice.InvocationMode mode = Proxy.IceReference.InvocationMode;
            if (mode == Ice.InvocationMode.BatchOneway || mode == Ice.InvocationMode.BatchDatagram)
            {
                Debug.Assert(false); // not implemented
                return;
            }

            if (mode == Ice.InvocationMode.Datagram && !IsOneway)
            {
                throw new System.InvalidOperationException("cannot make two-way call on a datagram proxy");
            }

            //
            // NOTE: invokeImpl doesn't throw so this can be called from the
            // try block with the catch block calling abort() in case of an
            // exception.
            //
            InvokeImpl(true); // userThread = true
        }