[opencoe-cvs] coekernel/src/COE/src/COE/java/org/opencoe/coe/kernel/apps ApplicationManager.java,1.3
Status: Alpha
Brought to you by:
rbroberg
From: <rbr...@us...> - 2003-11-25 08:17:42
|
Update of /cvsroot/opencoe/coekernel/src/COE/src/COE/java/org/opencoe/coe/kernel/apps In directory sc8-pr-cvs1:/tmp/cvs-serv3026/src/COE/src/COE/java/org/opencoe/coe/kernel/apps Modified Files: ApplicationManager.java _ApplicationManagerTree.java Log Message: [ 845321 ] Extend COE to handle optional Application data Index: ApplicationManager.java =================================================================== RCS file: /cvsroot/opencoe/coekernel/src/COE/src/COE/java/org/opencoe/coe/kernel/apps/ApplicationManager.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ApplicationManager.java 15 Nov 2003 19:49:34 -0000 1.3 --- ApplicationManager.java 25 Nov 2003 04:37:04 -0000 1.4 *************** *** 88,91 **** --- 88,93 ---- // load profile names into an Array ArrayList tmp = COE_get_current_profiles.getOutput(); + ArrayList tmp2 = new ArrayList(); + _OpenCOECmdExec COE_get_app_reserved_data; // for every profile name *************** *** 119,123 **** for (int j = 0; j < tmp.size(); j++) { t = (String) tmp.get(j); ! System.out.println("testout: " + t); StringTokenizer st = new StringTokenizer(t, ":"); a = new _OpenCOEApp(st.nextToken(), st.nextToken(), --- 121,125 ---- for (int j = 0; j < tmp.size(); j++) { t = (String) tmp.get(j); ! //System.out.println("testout: " + t); StringTokenizer st = new StringTokenizer(t, ":"); a = new _OpenCOEApp(st.nextToken(), st.nextToken(), *************** *** 128,131 **** --- 130,153 ---- } p.assignApp(a); + + // set class path if available + cmd = new String[]{"COE_HOME/bin/COE_get_app_reserved_data", + a.getName(), + p.getScope(), + "-f7", + "-f8"}; + COE_get_app_reserved_data = new _OpenCOECmdExec(cmd); + tmp2.clear(); + tmp2 = COE_get_app_reserved_data.getOutput(); + if (tmp2.size() > 0) { + t = (String) tmp2.get(0); + st = new StringTokenizer(t, ":"); + if (st.hasMoreElements()) { + a.setInitClass(st.nextToken()); + } + if (st.hasMoreElements()) { + a.setInitClassPath(st.nextToken()); + } + } } } Index: _ApplicationManagerTree.java =================================================================== RCS file: /cvsroot/opencoe/coekernel/src/COE/src/COE/java/org/opencoe/coe/kernel/apps/_ApplicationManagerTree.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** _ApplicationManagerTree.java 15 Nov 2003 19:49:34 -0000 1.2 --- _ApplicationManagerTree.java 25 Nov 2003 04:37:04 -0000 1.3 *************** *** 69,77 **** _OpenCOEApp n = (_OpenCOEApp) node; String c; if (n.getInitClass() != null) { c = n.getInitClass(); System.out.println("Node::initclass::"+c); //ClassLoader cl = new ClassLoader(); ! initLoadClass(c); } else { --- 69,79 ---- _OpenCOEApp n = (_OpenCOEApp) node; String c; + String p; if (n.getInitClass() != null) { c = n.getInitClass(); + p = n.getInitClassPath(); System.out.println("Node::initclass::"+c); //ClassLoader cl = new ClassLoader(); ! initLoadClass(c,p); } else { *************** *** 91,101 **** } ! private static Class initLoadClass (String c) { Class cc = null; - ClassLoader cl = ClassLoader.getSystemClassLoader(); try { ! Object co = cl.loadClass(c).newInstance(); ! //cc = (Class)co; ! //co.getClass().show(); } catch (ClassNotFoundException cnfe) { System.err.println("_ApplicationManagerTree::initLoadClass::ClassNotFound::"+c); --- 93,122 ---- } ! //private static Class initLoadClass (String c, String p) { ! private Class initLoadClass (String c, String p) { Class cc = null; try { ! if (p != null) { ! try { ! ! System.out.println("_ApplicationManagerTree::initLoadClass::try url::"+p); ! //java.net.URL[] urls = new java.net.URL[]{ ! //new java.net.URL("file://"+p)}; ! //java.net.URLClassLoader cl = ! //new java.net.URLClassLoader(urls); ! ClassLoader cl = ! new java.net.URLClassLoader( ! new java.net.URL[] { ! new java.net.URL("file://"+p)}, ! getClass().getClassLoader() ); ! //ClassLoader cl = ClassLoader.getSystemClassLoader(); ! Object co = cl.loadClass(c).newInstance(); ! } catch (java.net.MalformedURLException mue) { ! System.out.println("_ApplicationManagerTree::initLoadClass::bad url::"+p); ! } ! } else { ! ClassLoader cl = ClassLoader.getSystemClassLoader(); ! Object co = cl.loadClass(c).newInstance(); ! } } catch (ClassNotFoundException cnfe) { System.err.println("_ApplicationManagerTree::initLoadClass::ClassNotFound::"+c); |