KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > corba > se > impl > oa > poa > POAPolicyMediatorImpl_R_AOM


1 /*
2  * @(#)POAPolicyMediatorImpl_R_AOM.java 1.21 03/12/19
3  *
4  * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
5  * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
6  */

7
8 package com.sun.corba.se.impl.oa.poa ;
9
10 import org.omg.PortableServer.Servant JavaDoc ;
11 import org.omg.PortableServer.ServantManager JavaDoc ;
12 import org.omg.PortableServer.ForwardRequest JavaDoc ;
13 import org.omg.PortableServer.POAPackage.WrongPolicy JavaDoc ;
14 import org.omg.PortableServer.POAPackage.ObjectNotActive JavaDoc ;
15 import org.omg.PortableServer.POAPackage.ServantNotActive JavaDoc ;
16 import org.omg.PortableServer.POAPackage.ObjectAlreadyActive JavaDoc ;
17 import org.omg.PortableServer.POAPackage.ServantAlreadyActive JavaDoc ;
18 import org.omg.PortableServer.POAPackage.NoServant JavaDoc ;
19
20 import com.sun.corba.se.impl.orbutil.concurrent.SyncUtil ;
21 import com.sun.corba.se.impl.orbutil.ORBUtility ;
22 import com.sun.corba.se.impl.orbutil.ORBConstants ;
23
24 import com.sun.corba.se.impl.oa.NullServantImpl ;
25
26 /** Implementation of POARequesHandler that provides policy specific
27  * operations on the POA in the case:
28  * <ul>
29  * <li>retain</li>
30  * <li>useActiveObjectMapOnly</li>
31  * </ul>
32  */

33 public class POAPolicyMediatorImpl_R_AOM extends POAPolicyMediatorBase_R {
34     POAPolicyMediatorImpl_R_AOM( Policies policies, POAImpl poa )
35     {
36     // assert policies.retainServants()
37
super( policies, poa ) ;
38
39     // policies.useActiveObjectMapOnly()
40
if (!policies.useActiveMapOnly())
41         throw poa.invocationWrapper().policyMediatorBadPolicyInFactory() ;
42     }
43     
44     protected java.lang.Object JavaDoc internalGetServant( byte[] id,
45     String JavaDoc operation ) throws ForwardRequest JavaDoc
46     {
47     java.lang.Object JavaDoc servant = internalIdToServant( id ) ;
48     if (servant == null)
49         servant = new NullServantImpl(
50         poa.invocationWrapper().nullServant() ) ;
51     return servant ;
52     }
53
54     public void etherealizeAll()
55     {
56     // NO-OP
57
}
58
59     public ServantManager JavaDoc getServantManager() throws WrongPolicy JavaDoc
60     {
61         throw new WrongPolicy JavaDoc();
62     }
63
64     public void setServantManager( ServantManager JavaDoc servantManager )
65     throws WrongPolicy JavaDoc
66     {
67         throw new WrongPolicy JavaDoc();
68     }
69
70     public Servant JavaDoc getDefaultServant() throws NoServant JavaDoc, WrongPolicy JavaDoc
71     {
72     throw new WrongPolicy JavaDoc();
73     }
74
75     public void setDefaultServant( Servant JavaDoc servant ) throws WrongPolicy JavaDoc
76     {
77     throw new WrongPolicy JavaDoc();
78     }
79
80     public Servant JavaDoc idToServant( byte[] id )
81     throws WrongPolicy JavaDoc, ObjectNotActive JavaDoc
82     {
83     Servant JavaDoc s = internalIdToServant( id ) ;
84
85     if (s == null)
86         throw new ObjectNotActive JavaDoc() ;
87     else
88         return s;
89     }
90 }
91
Popular Tags