ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/server/uk/org/iscream/cms/server/clientinterface/ClientInterfaceMain.java
(Generate patch)

Comparing projects/cms/source/server/uk/org/iscream/cms/server/clientinterface/ClientInterfaceMain.java (file contents):
Revision 1.29 by tdb, Wed Feb 5 16:43:46 2003 UTC vs.
Revision 1.30 by tdb, Mon May 5 22:05:06 2003 UTC

# Line 49 | Line 49 | public class ClientInterfaceMain implements Component
49  
50   //---CONSTRUCTORS---
51  
52 +    /**
53 +     * Constructs a ClientInterface with the name given
54 +     *
55 +     * @param givenName the name
56 +     */
57 +    public ClientInterfaceMain(String givenName) {
58 +        NAME = givenName;
59 +    }
60 +
61   //---PUBLIC METHODS---
62  
63      /**
# Line 60 | Line 69 | public class ClientInterfaceMain implements Component
69          
70          _logger.write(toString(), Logger.SYSINIT, "coming up");
71          
63        
64        ConfigurationProxy cp = ConfigurationProxy.getInstance();
65        String configName = "ClientInterface";
66        
67        // set our name
68        try {
69            NAME = cp.getProperty(configName, "ClientInterface.name");
70        } catch (PropertyNotFoundException e) {
71            NAME = null;
72            _logger.write(toString(), Logger.WARNING, "ClientInterface name not set: "+e);
73        }
74        
75        _logger.write(toString(), Logger.SYSINIT, "configured");
76        
72          // Setup a PacketSorter
73          PacketSorter ps = new PacketSorter();
74          ps.start();
75          
76          // ClientInterfaceServant start (for inbound data)
77          _logger.write(toString(), Logger.DEBUG, "starting servant for inbound data");
78 <        ClientInterfaceServant ciServant = new ClientInterfaceServant(ps);
79 <        _refman.bindToOrb(ciServant, "iscream.ClientInterface\\." + ClientInterfaceMain.NAME);
78 >        try {
79 >            ClientInterfaceServant ciServant = new ClientInterfaceServant(ps);
80 >            //_refman.bindToOrb(ciServant, "iscream.ClientInterface\\." + ClientInterfaceMain.NAME);
81 >            org.omg.CORBA.Object objRef = _refman.getRootPOA().servant_to_reference(ciServant);
82 >            Client client = ClientHelper.narrow(objRef);
83 >            
84 >            String parent = ConfigurationProxy.getInstance().getProperty("ClientInterface." + ClientInterfaceMain.NAME, "ClientInterface.parent");
85 >            objRef = _refman.getCORBARef("iscream.ClientInterface\\." + parent);
86 >            CorbaClientListener listener = CorbaClientListenerHelper.narrow(objRef);
87 >            
88 >            CorbaControlHandler handler = listener.connect(client, NAME);
89 >            handler.startData();
90 >        }
91 >        catch(Exception e) {
92 >            // not sure what to do here
93 >            // so we just log the error
94 >            _logger.write(toString(), Logger.ERROR, "ERROR - " + e.getMessage());
95 >        }
96          
97          // Startup the TCPListener
98          TCPClientListener tcpClientListener = new TCPClientListener(ps);
# Line 90 | Line 101 | public class ClientInterfaceMain implements Component
101          // Startup the CORBA Listener
102          _logger.write(toString(), Logger.DEBUG, "starting servant for inbound clients");
103          CorbaClientListenerServant corbaServant = new CorbaClientListenerServant(ps);
104 <        // !!! verify this name is correct at some point !!!
94 <        _refman.bindToOrb(corbaServant, "iscream.ClientInterface\\.CorbaListener");
104 >        _refman.bindToOrb(corbaServant, "iscream.ClientInterface\\." + ClientInterfaceMain.NAME);
105          
106          _logger.write(toString(), Logger.SYSINIT, "started");
107      }
# Line 108 | Line 118 | public class ClientInterfaceMain implements Component
118              org.omg.CORBA.Object obj;
119              obj = _refman.getCORBARef("iscream.Logger");
120              obj = _refman.getCORBARef("iscream.ConfigurationManager");
121 +            // suss out the parent client interface
122 +            ConfigurationProxy cp = ConfigurationProxy.getInstance();
123 +            String parentName = cp.getProperty("ClientInterface." + ClientInterfaceMain.NAME, "ClientInterface.parent");
124 +            // check the parent is alive
125 +            obj = _refman.getCORBARef("iscream.ClientInterface\\." + parentName);
126          } catch(ComponentCORBAException e) {
127              System.err.println(toString() + ": Dependency Failure: "+e);
128 +            return false;
129 +        } catch(PropertyNotFoundException e) {
130 +            System.err.println(toString() + ": Unable to obtain configuration: "+e);
131              return false;
132          }
133          // dependency check suceeded

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines