summaryrefslogtreecommitdiff
path: root/csharp/test/Ice/binding/RemoteObjectAdapterI.cs
blob: 211e47e15b52a416bf497b99b51e3dfed2079ddb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
//
// Copyright (c) ZeroC, Inc. All rights reserved.
//

namespace Ice
{
    namespace binding
    {
        public class RemoteObjectAdapterI : Test.RemoteObjectAdapterDisp_
        {
            public RemoteObjectAdapterI(Ice.ObjectAdapter adapter)
            {
                _adapter = adapter;
                _testIntf = Test.TestIntfPrxHelper.uncheckedCast(_adapter.add(new TestI(),
                                                            Ice.Util.stringToIdentity("test")));
                _adapter.activate();
            }

            public override Test.TestIntfPrx
            getTestIntf(Ice.Current current)
            {
                return _testIntf;
            }

            public override void
            deactivate(Ice.Current current)
            {
                try
                {
                    _adapter.destroy();
                }
                catch(Ice.ObjectAdapterDeactivatedException)
                {
                }
            }

            private Ice.ObjectAdapter _adapter;
            private Test.TestIntfPrx _testIntf;
        }
    }
}