01: /**
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */package org.apache.geronimo.corba.security.config;
17:
18: import org.omg.CORBA.ORB;
19:
20: import org.apache.geronimo.corba.CORBABean;
21: import org.apache.geronimo.corba.CSSBean;
22:
23: /**
24: * Translates TSS and CSS configurations into CORBA startup args and properties.
25: *
26: * @version $Revision: 477622 $ $Date: 2006-11-21 03:03:24 -0800 (Tue, 21 Nov 2006) $
27: */
28: public interface ConfigAdapter {
29:
30: /**
31: * Create an ORB for a CORBABean server context.
32: *
33: * @param server The CORBABean that owns this ORB's configuration.
34: *
35: * @return An ORB instance configured for the CORBABean.
36: * @exception ConfigException
37: */
38: public ORB createServerORB(CORBABean server) throws ConfigException;
39:
40: /**
41: * Create an ORB for a CSSBean nameservice client context.
42: *
43: * @param client The configured CSSBean used for access.
44: *
45: * @return An ORB instance configured for this client access.
46: * @exception ConfigException
47: */
48:
49: public ORB createNameServiceClientORB(CSSBean client)
50: throws ConfigException;
51:
52: /**
53: * Create an ORB for a CSSBean client context.
54: *
55: * @param client The configured CSSBean used for access.
56: *
57: * @return An ORB instance configured for this client access.
58: * @exception ConfigException
59: */
60: public ORB createClientORB(CSSBean client) throws ConfigException;
61:
62: /**
63: * Create a transient name service instance using the
64: * specified host name and port.
65: *
66: * @param host The String host name.
67: * @param port The port number of the listener.
68: *
69: * @return An opaque object that represents the name service.
70: * @exception ConfigException
71: */
72: public Object createNameService(String host, int port)
73: throws ConfigException;
74:
75: /**
76: * Destroy a name service instance created by a
77: * prior call to createNameService().
78: *
79: * @param ns The opaque name service object returned from a
80: * prior call to createNameService().
81: */
82: public void destroyNameService(Object ns);
83: }
|