git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube...
authorDénes Horváth <USER\denes.horvath>
Mon, 30 Sep 2019 12:19:33 +0000 (12:19 +0000)
committerDénes Horváth <USER\denes.horvath>
Mon, 30 Sep 2019 12:19:33 +0000 (12:19 +0000)
server/-configuration/maestro.json
server/user.jobengine.osgi.server/src/user/jobengine/zk/model/DirectoryListModel.java
server/user.jobengine.osgi.server/src/user/jobengine/zk/model/MaestroConfig.java
server/user.jobengine.osgi.server/src/user/jobengine/zk/model/MaestroModel.java
server/user.jobengine.osgi.server/src/user/jobengine/zk/model/PlanAirListModel.java
server/user.jobengine.osgi.server/src/user/jobengine/zk/model/TargetsListModel.java

index a65216a29bd6fb6caa6245081b10f4c345dfd043..36f35ed0a807aa9f769fb5893b04933203219219 100644 (file)
@@ -1,10 +1,28 @@
 {\r
        "sourceStoreUri": {\r
+               "name": "Default",\r
                "protocol": "LOCAL",\r
                "uri": "c:/temp",\r
                "fileFilter": "*.log;*.bat",\r
                "showDirectories": true\r
        },\r
+       "alternateSourceStoreUris": \r
+               [\r
+                       {\r
+                               "name": "Alt1",\r
+                               "protocol": "LOCAL",\r
+                               "uri": "c:/dev",\r
+                               "fileFilter": "*.log;*.bat",\r
+                               "showDirectories": true\r
+                       },\r
+                       {\r
+                               "name": "Alt2",\r
+                               "protocol": "LOCAL",\r
+                               "uri": "c:/opt",\r
+                               "fileFilter": "*.log;*.bat",\r
+                               "showDirectories": true\r
+                       }\r
+       ],\r
        "targets": \r
        [\r
                {\r
index 40783dcb66082421a8702c2bcecce872ed0e01e4..791cd69eb90ab1217025aedb37caddac8c93559b 100644 (file)
@@ -12,11 +12,13 @@ import org.zkoss.bind.annotation.BindingParam;
 import org.zkoss.bind.annotation.Command;\r
 import org.zkoss.bind.annotation.Init;\r
 import org.zkoss.bind.annotation.NotifyChange;\r
+import org.zkoss.zk.ui.Executions;\r
 import org.zkoss.zul.ListModelList;\r
 \r
+import user.commons.NamedStoreUri;\r
 import user.commons.RemoteFile;\r
 import user.commons.StoreUri;\r
-import user.commons.config.JSONConfig;\r
+import user.jobengine.zk.util.SessionUtil;\r
 \r
 public class DirectoryListModel {\r
        private static final Logger logger = LogManager.getLogger();\r
@@ -72,9 +74,17 @@ public class DirectoryListModel {
        @Init\r
        public void init() {\r
                try {\r
-                       String key = "jobengine.maestro.config";\r
-                       config = JSONConfig.read(key, MaestroConfig.class);\r
+                       config = SessionUtil.getMaestroConfig();\r
                        uri = config.getSourceStoreUri();\r
+\r
+                       String param = Executions.getCurrent().getParameter("source");\r
+                       if (param != null && !param.isEmpty()) {\r
+                               for (NamedStoreUri altSourceStoreUri : config.getAlternateSourceStoreUris()) {\r
+                                       if (param.equals(altSourceStoreUri.getName()))\r
+                                               uri = altSourceStoreUri;\r
+                               }\r
+                       }\r
+\r
                        defaultFileFilter = uri.getFileFilter();\r
                        defaultDirectoryFilter = uri.getDirectoryFilter();\r
 \r
@@ -144,6 +154,7 @@ public class DirectoryListModel {
 \r
                Map<String, Object> args = new HashMap<>();\r
                args.put("sourcedata", selection);\r
+               args.put("sourceUri", uri);\r
                BindUtils.postGlobalCommand(null, null, "updateExecuteState", args);\r
        }\r
 \r
index d1b5d4f56792f415fd61c1b9d802b33fb3199af6..b5aba0163bebbab0ea2c535df866d94296fa85f3 100644 (file)
@@ -2,14 +2,15 @@ package user.jobengine.zk.model;
 \r
 import java.util.List;\r
 \r
-import user.commons.StoreUri;\r
+import user.commons.NamedStoreUri;\r
 \r
 public class MaestroConfig {\r
-       private StoreUri sourceStoreUri;\r
+       private NamedStoreUri sourceStoreUri;\r
+       private List<NamedStoreUri> alternateSourceStoreUris;\r
 \r
        private List<MaestroTarget> targets;\r
 \r
-       public StoreUri getSourceStoreUri() {\r
+       public NamedStoreUri getSourceStoreUri() {\r
                return sourceStoreUri;\r
        }\r
 \r
@@ -17,11 +18,19 @@ public class MaestroConfig {
                return targets;\r
        }\r
 \r
-       public void setSourceStoreUri(StoreUri sourceStoreUri) {\r
+       public void setSourceStoreUri(NamedStoreUri sourceStoreUri) {\r
                this.sourceStoreUri = sourceStoreUri;\r
        }\r
 \r
        public void setTargets(List<MaestroTarget> targets) {\r
                this.targets = targets;\r
        }\r
+\r
+       public List<NamedStoreUri> getAlternateSourceStoreUris() {\r
+               return alternateSourceStoreUris;\r
+       }\r
+\r
+       public void setAlternateSourceStoreUris(List<NamedStoreUri> alternateSourceStoreUris) {\r
+               this.alternateSourceStoreUris = alternateSourceStoreUris;\r
+       }\r
 }\r
index fbcac1ab453ee0d76dbd109366e275e076086b8c..3b97802cde861875cae5d1d0abea606706ca3058 100644 (file)
@@ -3,16 +3,17 @@ package user.jobengine.zk.model;
 import org.apache.logging.log4j.LogManager;\r
 import org.apache.logging.log4j.Logger;\r
 import org.zkoss.bind.annotation.Init;\r
+import org.zkoss.zk.ui.Executions;\r
 \r
-import user.commons.StoreUri;\r
-import user.commons.config.JSONConfig;\r
+import user.commons.NamedStoreUri;\r
+import user.jobengine.zk.util.SessionUtil;\r
 \r
 public class MaestroModel {\r
        private static final Logger logger = LogManager.getLogger();\r
-       private StoreUri sourceUri;\r
+       private NamedStoreUri sourceUri;\r
        private MaestroConfig sourceConfig = null;\r
 \r
-       public StoreUri getSourceUri() {\r
+       public NamedStoreUri getSourceUri() {\r
                return sourceUri;\r
        }\r
 \r
@@ -21,15 +22,22 @@ public class MaestroModel {
 \r
                String message = "A forrás file -ok nem elérhetőek: {}";\r
                try {\r
-                       String key = "jobengine.maestro.config";\r
-                       sourceConfig = JSONConfig.read(key, MaestroConfig.class);\r
+                       sourceConfig = SessionUtil.getMaestroConfig();\r
                        sourceUri = sourceConfig.getSourceStoreUri();\r
+\r
+                       String param = Executions.getCurrent().getParameter("source");\r
+                       if (param != null && !param.isEmpty()) {\r
+                               for (NamedStoreUri altSourceStoreUri : sourceConfig.getAlternateSourceStoreUris()) {\r
+                                       if (param.equals(altSourceStoreUri.getName()))\r
+                                               sourceUri = altSourceStoreUri;\r
+                               }\r
+                       }\r
                } catch (Exception e) {\r
                        logger.error(message, e.getMessage());\r
                }\r
        }\r
 \r
-       public void setSourceUri(StoreUri sourceUri) {\r
+       public void setSourceUri(NamedStoreUri sourceUri) {\r
                this.sourceUri = sourceUri;\r
        }\r
 \r
index 09616d63d6fd869571eccacf271cf34b7bcf9ad1..159043ba419820862565d3f9b4b45a1937ca98ca 100644 (file)
@@ -15,8 +15,8 @@ import org.zkoss.bind.annotation.Init;
 import org.zkoss.zul.Column;\r
 import org.zkoss.zul.ListModelList;\r
 \r
-import user.commons.config.JSONConfig;\r
 import user.jobengine.osgi.server.ComponentBinder;\r
+import user.jobengine.zk.util.SessionUtil;\r
 import user.mediacube.metadata.interfaces.IMetadata;\r
 import user.mediacube.metadata.interfaces.IMetadataProvider;\r
 import user.mediacube.metadata.interfaces.IMetadataProviderFactory;\r
@@ -73,9 +73,8 @@ public class PlanAirListModel {
 \r
        @Init\r
        public void init() {\r
-               String key = "jobengine.maestro.config";\r
                try {\r
-                       config = JSONConfig.read(key, MaestroConfig.class);\r
+                       config = SessionUtil.getMaestroConfig();\r
                } catch (Exception e) {\r
                        logger.error("Hiba a config file beállításánál {}", e.getMessage());\r
                }\r
index 4790149405c8c57fbe70ba6f05d001b2637e4770..45062151b126d4a8a1774c09fb862a5cdfeac295 100644 (file)
@@ -15,8 +15,8 @@ import org.zkoss.bind.annotation.NotifyChange;
 import org.zkoss.zul.ListModelList;\r
 \r
 import user.commons.RemoteFile;\r
-import user.commons.config.JSONConfig;\r
-import user.commons.remotestore.RemoteStoreProtocol;\r
+import user.commons.StoreUri;\r
+import user.jobengine.zk.util.SessionUtil;\r
 import user.mediacube.metadata.interfaces.IMetadata;\r
 \r
 public class TargetsListModel {\r
@@ -26,6 +26,7 @@ public class TargetsListModel {
        private boolean executeEnabled;\r
        Set<RemoteFile> sourceData;\r
        Set<IMetadata> metaData;\r
+       private StoreUri sourceUri;\r
 \r
        public boolean conditionsOk() {\r
                boolean srcMetaOk = false;\r
@@ -62,15 +63,22 @@ public class TargetsListModel {
        @Command\r
        public void createJob() {\r
                String fileName = sourceData.iterator().next().getName();\r
-               String sourcePath = config.getSourceStoreUri().getUri();\r
+               // String sourcePath = sourceUri.getUri();\r
+               String sourcePath = null;\r
+               try {\r
+                       sourcePath = sourceUri.toString(true);\r
+               } catch (Exception e) {\r
+                       // TODO Auto-generated catch block\r
+                       e.printStackTrace();\r
+               }\r
                for (int i = 0; i < targets.size(); i++) {\r
                        if (targets.get(i).isSelected()) {\r
                                Map<String, Object> params = new HashMap<>();\r
-                               params.put("sourceProtocol", RemoteStoreProtocol.LOCAL.toString());\r
+                               params.put("sourceProtocol", sourceUri.getProtocol());\r
                                params.put("sourcePath", sourcePath);\r
                                params.put("sourceFileName", fileName);\r
 \r
-                               params.put("targetProtocol", RemoteStoreProtocol.LOCAL.toString());\r
+                               params.put("targetProtocol", targets.get(i).getStoreUri().getProtocol());\r
                                params.put("targetPath", targets.get(i).getStoreUri().getUri());\r
                                params.put("killDateDays", 0);\r
                                // params.put("targetFileName", fileName);\r
@@ -85,10 +93,11 @@ public class TargetsListModel {
 \r
        @Init\r
        public void init() {\r
-               String key = "jobengine.maestro.config";\r
                try {\r
-                       config = JSONConfig.read(key, MaestroConfig.class);\r
+                       config = SessionUtil.getMaestroConfig();\r
                        targets = new ListModelList<>(config.getTargets());\r
+                       for (int i = 0; i < targets.size(); i++)\r
+                               targets.get(i).setSelected(false);\r
                } catch (Exception e) {\r
                        logger.error("Hiba a config file beállításánál {}", e.getMessage());\r
                }\r
@@ -119,9 +128,11 @@ public class TargetsListModel {
 \r
        @GlobalCommand\r
        @NotifyChange("executeEnabled")\r
-       public void updateExecuteState(@BindingParam("sourcedata") Set<RemoteFile> sourceData, @BindingParam("metadata") Set<IMetadata> metaData) {\r
+       public void updateExecuteState(@BindingParam("sourcedata") Set<RemoteFile> sourceData, @BindingParam("sourceUri") StoreUri sourceUri,\r
+                       @BindingParam("metadata") Set<IMetadata> metaData) {\r
                this.sourceData = sourceData;\r
                this.metaData = metaData;\r
+               this.sourceUri = sourceUri;\r
                setExecuteEnabled(conditionsOk());\r
                // logger.info("{}", sourceData);\r
                // logger.info("{}", metaData);\r