@@ -74,14 +74,9 @@ public ConfigLoader(
7474 String userid ,
7575 String domain
7676 ) {
77- // Initialize UserDatabase
7877 this .contextRootPath = request .getContextPath ();
7978 this .initializeUserDatabase ();
80-
81- // Initialize portal config
8279 portalConfig .initializePortalConfig (request );
83-
84- // Initialize user config
8580 this .initializeUserConfig (request , userid , domain );
8681 }
8782
@@ -104,7 +99,7 @@ private void initializeUserConfig(
10499 if (this .domainId != null ) this .userDomainUrl =
105100 this .contextRootPath +
106101 "/" +
107- PortalConfig .USERS_RELATIVE_DIR +
102+ MainConfig .USERS_RELATIVE_DIR +
108103 "/" +
109104 this .getUserId () +
110105 "/" +
@@ -120,28 +115,25 @@ private void initializeUserConfig(
120115 if (!this .checkUser (null )) return ;
121116
122117 this .exportUserUrl =
123- portalConfig .serverUrl +
118+ portalConfig .mainConfig . serverUrl +
124119 contextRootPath +
125- PortalConfig .EXPORT_SERVLET_PATH +
120+ MainConfig .EXPORT_SERVLET_PATH +
126121 "/" +
127- PortalConfig .USERS_RELATIVE_DIR +
122+ MainConfig .USERS_RELATIVE_DIR +
128123 "/" +
129124 userId ;
130125 this .userDir =
131- portalConfig .storageDirectory +
126+ portalConfig .storageConfig . storageDirectory +
132127 File .separator +
133- PortalConfig .USERS_RELATIVE_DIR +
128+ MainConfig .USERS_RELATIVE_DIR +
134129 File .separator +
135130 userId ;
136131
137132 this .userPath =
138- contextRootPath + "/" + PortalConfig .USERS_RELATIVE_DIR + "/" + userId ;
133+ contextRootPath + "/" + MainConfig .USERS_RELATIVE_DIR + "/" + userId ;
139134
140135 // Create userDir (if it doesn't exist)
141- File uf = new File (this .userDir );
142- if (!uf .exists () && !uf .mkdirs ()) System .err .println (
143- "Cannot create user directory : " + uf .getAbsolutePath ()
144- );
136+ StorageConfig .createStorageDirectory (this .userDir );
145137
146138 // Get domain and user list
147139 DomainController dc = new DomainController (this );
@@ -165,7 +157,7 @@ private void initializeUserConfig(
165157 this .userDomainUrl =
166158 this .contextRootPath +
167159 "/" +
168- PortalConfig .USERS_RELATIVE_DIR +
160+ MainConfig .USERS_RELATIVE_DIR +
169161 "/" +
170162 this .getUserId () +
171163 "/" +
@@ -318,52 +310,57 @@ public Properties getProperties() {
318310 // Return Properties that are currently used by catalogs & planners
319311 public Properties getProperties (Domain domain ) {
320312 Properties props = new Properties ();
313+ StorageConfig storageConfig = portalConfig .storageConfig ;
314+ OntologyConfig ontologyConfig = portalConfig .getOntologyConfig ();
315+ MainConfig mainConfig = portalConfig .mainConfig ;
321316 if (domain != null ) {
322317 props = domain .getProperties ();
323318 if (domain .isLegacy ()) return props ;
324- props .setProperty (ONT_DIR_URL , PortalConfig .ONT_DIR_URL );
319+ props .setProperty (ONT_DIR_URL , OntologyConfig .ONT_DIR_URL );
325320 if (!domain .getUseSharedTripleStore ()) props .setProperty (
326321 ONT_DIR_MAP ,
327322 "file:" + domain .getDomainDirectory () + File .separator + "ontology"
328323 );
329324
330- props .setProperty ("ont.data.url" , portalConfig .getDataOntologyUrl ());
325+ props .setProperty ("ont.data.url" , ontologyConfig .getDataOntologyUrl ());
331326 props .setProperty (
332327 "ont.component.url" ,
333- portalConfig .getComponentOntologyUrl ()
328+ ontologyConfig .getComponentOntologyUrl ()
334329 );
335330 props .setProperty (
336331 "ont.workflow.url" ,
337- portalConfig .getWorkflowOntologyUrl ()
332+ ontologyConfig .getWorkflowOntologyUrl ()
338333 );
339334 props .setProperty (
340335 "ont.execution.url" ,
341- portalConfig .getExecutionOntologyUrl ()
336+ ontologyConfig .getExecutionOntologyUrl ()
337+ );
338+ props .setProperty (
339+ "ont.resource.url" ,
340+ ontologyConfig .getResourceOntologyUrl ()
342341 );
343342
344343 if (domain .getUseSharedTripleStore ()) props .setProperty (
345344 "tdb.repository.dir" ,
346- portalConfig .getTdbDirectory ()
345+ storageConfig .getTdbDirectory ()
347346 );
348347
349- HashMap <String , ExeEngine > engines = portalConfig .getEngines ();
350- ExeEngine pengine = engines .get (domain .getPlanEngine ());
351- ExeEngine sengine = engines .get (domain .getStepEngine ());
348+ HashMap <String , ExecutionEngineConfig > engines =
349+ portalConfig .executionConfig .getEngines ();
350+ ExecutionEngineConfig pengine = engines .get (domain .getPlanEngine ());
351+ ExecutionEngineConfig sengine = engines .get (domain .getStepEngine ());
352352 props .putAll (pengine .getProperties ());
353353 props .putAll (sengine .getProperties ());
354354 } else {
355- props .setProperty ("tdb.repository.dir" , portalConfig .getTdbDirectory ());
355+ props .setProperty ("tdb.repository.dir" , storageConfig .getTdbDirectory ());
356356 }
357- props .setProperty ("logs.dir" , portalConfig .getLogsDirectory ());
358- props .setProperty ("dot.path" , portalConfig .getDotFile ());
359- props .setProperty (
360- "ont.resource.url" ,
361- portalConfig .getResourceOntologyUrl ()
362- );
357+ props .setProperty ("logs.dir" , storageConfig .getLogsDirectory ());
358+ props .setProperty ("dot.path" , mainConfig .getDotFile ());
363359
364360 props .setProperty (
365361 "lib.resource.url" ,
366- this .portalConfig .getExportCommunityUrl () + "/resource/library.owl"
362+ this .portalConfig .mainConfig .getExportCommunityUrl () +
363+ "/resource/library.owl"
367364 );
368365
369366 if (domain != null && !domain .getUseSharedTripleStore ()) props .setProperty (
@@ -380,7 +377,8 @@ public Properties getProperties(Domain domain) {
380377
381378 props .setProperty (
382379 "lib.provenance.url" ,
383- this .portalConfig .getExportCommunityUrl () + "/provenance/library.owl"
380+ this .portalConfig .mainConfig .getExportCommunityUrl () +
381+ "/provenance/library.owl"
384382 );
385383
386384 if (this .viewerId != null ) props .setProperty ("viewer.id" , this .viewerId );
@@ -394,20 +392,24 @@ public Properties getProperties(Domain domain) {
394392 }
395393
396394 public PlanExecutionEngine getDomainExecutionEngine () {
397- ExeEngine pengine = portalConfig .engines .get (domain .getPlanEngine ());
398- ExeEngine sengine = portalConfig .engines .get (domain .getStepEngine ());
395+ ExecutionEngineConfig planEngine = portalConfig .executionConfig .engines .get (
396+ domain .getPlanEngine ()
397+ );
398+ ExecutionEngineConfig stepEngine = portalConfig .executionConfig .engines .get (
399+ domain .getStepEngine ()
400+ );
399401 try {
400- pengine .getProperties ().putAll (this .getProperties ());
401- sengine .getProperties ().putAll (this .getProperties ());
402+ planEngine .getProperties ().putAll (this .getProperties ());
403+ stepEngine .getProperties ().putAll (this .getProperties ());
402404 // TODO: Check if the selected engines are compatible
403405 // and can be used as plan and step engines respectively
404406 PlanExecutionEngine pee = ExecutionFactory .createPlanExecutionEngine (
405- pengine .getImplementation (),
406- pengine .getProperties ()
407+ planEngine .getImplementation (),
408+ planEngine .getProperties ()
407409 );
408410 StepExecutionEngine see = ExecutionFactory .createStepExecutionEngine (
409- sengine .getImplementation (),
410- sengine .getProperties ()
411+ stepEngine .getImplementation (),
412+ stepEngine .getProperties ()
411413 );
412414 ExecutionLoggerAPI logger = ExecutionToolsFactory .createLogger (
413415 this .getProperties ()
@@ -418,7 +420,9 @@ public PlanExecutionEngine getDomainExecutionEngine() {
418420 ExecutionResourceAPI resource = ExecutionToolsFactory .getResourceAPI (
419421 this .getProperties ()
420422 );
421- resource .setLocalStorageFolder (portalConfig .getStorageDirectory ());
423+ resource .setLocalStorageFolder (
424+ portalConfig .storageConfig .getStorageDirectory ()
425+ );
422426 pee .setStepExecutionEngine (see );
423427 pee .setExecutionLogger (logger );
424428 pee .setExecutionMonitor (monitor );
0 commit comments