[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);
|