git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube...
authorVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Tue, 10 Oct 2017 14:54:16 +0000 (14:54 +0000)
committerVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Tue, 10 Oct 2017 14:54:16 +0000 (14:54 +0000)
19 files changed:
server/-configuration/scheduledjobs.json
server/user.jobengine.executors/jobtemplates/archive-material.xml
server/user.jobengine.executors/jobtemplates/archive-ondemand.xml
server/user.jobengine.executors/jobtemplates/delete-materials.xml
server/user.jobengine.executors/jobtemplates/retrieve-material.xml
server/user.jobengine.executors/jobtemplates/retrieve-morpheus-missing-materials.xml
server/user.jobengine.executors/jobtemplates/retrieve-ondemand-material.xml [new file with mode: 0644]
server/user.jobengine.executors/jobtemplates/retrieve-traffic-missing-materials.xml
server/user.jobengine.executors/src/user/jobengine/server/steps/ArchiveListBuilderStep.java
server/user.jobengine.executors/src/user/jobengine/server/steps/ArchiveMaterialSubmitStep.java
server/user.jobengine.executors/src/user/jobengine/server/steps/CheckMORPHEUSMissingMaterialsStep.java
server/user.jobengine.executors/src/user/jobengine/server/steps/CheckTrafficMissingMaterialsStep.java
server/user.jobengine.executors/src/user/jobengine/server/steps/DeleteMaterialsStep.java
server/user.jobengine.executors/src/user/jobengine/server/steps/TSMBackupStep.java
server/user.jobengine.executors/src/user/jobengine/server/steps/TSMRestoreStep.java
server/user.jobengine.executors/src/user/jobengine/server/steps/TranscodeSELENIOStep.java
server/user.jobengine.osgi.server/pages/mediaplayer.jsp
server/user.jobengine.osgi.server/pages/search_items.zul
server/user.jobengine.osgi.server/src/user/jobengine/zk/model/CachedListModel.java

index 199f396d09d2f7a5d9add5a095e8e2c6a35a23d3..9347880f8a43dd6db82d67c3a0e7a2eab31d445d 100644 (file)
@@ -6,8 +6,8 @@
       "executeimmediate": true,\r
       "cronexpression": "0 0 0/1 1/1 * ? *",\r
       "parameters": [ \r
-       {"name": "inputFolder", "value": "/mnt/ISILON/ARCHIVE", "type": "java.lang.String"},\r
-       {"name": "globalInputFolder", "value": "\\\\10.10.1.100\\BRAAVOS\\ARCHIVE", "type": "java.lang.String"}\r
+       {"name": "sourcePath", "value": "/mnt/ISILON/ARCHIVE", "type": "java.lang.String"},\r
+       {"name": "globalSourcePath", "value": "\\\\10.10.1.100\\BRAAVOS\\ARCHIVE", "type": "java.lang.String"}\r
       ]\r
        },\r
        {\r
        {"name": "userName", "value": "MAM", "type": "java.lang.String"},\r
        {"name": "password", "value": "Echotv.hu", "type": "java.lang.String"},\r
        {"name": "lookupDays", "value": 7, "type": "java.lang.Integer"},\r
-       {"name": "outputPath", "value": "\\\\10.10.1.100\\BRAAVOS\\PLAYOUT", "type": "java.lang.String"}\r
+       {"name": "targetPath", "value": "\\\\10.10.1.100\\BRAAVOS\\PLAYOUT", "type": "java.lang.String"}\r
+      ]\r
+       },      \r
+       {\r
+      "active": false,\r
+         "name" : "MORPHEUS anyagok visszatöltése",\r
+      "template": "retrieve-morpheus-missing-materials.xml",\r
+      "executeimmediate": true,\r
+      "cronexpression": "0 0 0/1 1/1 * ? *",\r
+      "parameters": [\r
+       {"name": "sourcePath", "value": "\\\\10.10.1.100\\BRAAVOS\\PLAYOUT\\MORPHEUS", "type": "java.lang.String"},\r
+       {"name": "targetPath", "value": "\\\\10.10.1.100\\BRAAVOS\\PLAYOUT", "type": "java.lang.String"}\r
       ]\r
        },      \r
        {\r
@@ -31,7 +42,7 @@
       "executeimmediate": true,\r
       "cronexpression": "0 0 0/1 1/1 * ? *",\r
       "parameters": [ \r
-       {"name": "inputFolder", "value": "\\\\10.10.1.100\\BRAAVOS\\ARCHIVE", "type": "java.lang.String"},\r
+       {"name": "sourcePath", "value": "\\\\10.10.1.100\\BRAAVOS\\ARCHIVE", "type": "java.lang.String"},\r
        {"name": "userName", "value": "mediacube", "type": "java.lang.String"},\r
        {"name": "password", "value": "Broadca5T", "type": "java.lang.String"}\r
       ]\r
index 500f3264ec93e98a4242c46bccb5ba086b767bf8..bb9fd2bfb07dce523c313652f9c3c23ea405960b 100644 (file)
@@ -3,7 +3,7 @@
        <declarations>\r
                <parameters>\r
                        <parameter name="archiveItem" type="user.jobengine.server.steps.ArchiveItem" />\r
-                       <parameter name="globalInputFolder" type="java.lang.String"/>\r
+                       <parameter name="globalSourcePath" type="java.lang.String"/>\r
                </parameters>\r
                <variables>\r
                        <variable name="mediaCubeMedia" type="user.jobengine.db.Media" />\r
@@ -35,7 +35,7 @@
                                <calljobstep id="id3" type="user.jobengine.server.steps.TranscodeSELENIOStep" weight="1">\r
                                        <inputs>\r
                                                <input>\r
-                                                       <parameter name="globalInputFolder" />\r
+                                                       <parameter name="globalSourcePath" />\r
                                                </input>\r
                                                <input>\r
                                                        <parameter name="archiveItem" />\r
index 956b84c19e3a1d234a91e5a00a546fc2013038c5..9f38a3bb2f41dd2f2cb132dbb643e6ad4f90ec94 100644 (file)
@@ -2,8 +2,8 @@
 <jobtemplate name="Felhasználói archiválás">\r
 <declarations>\r
        <parameters>\r
-               <parameter name="inputFolder" type="java.lang.String"/>\r
-               <parameter name="globalInputFolder" type="java.lang.String"/>\r
+               <parameter name="sourcePath" type="java.lang.String"/>\r
+               <parameter name="globalSourcePath" type="java.lang.String"/>\r
        </parameters>\r
        <variables>\r
                <variable name="archiveList" type="java.util.ArrayList"/>\r
@@ -13,7 +13,7 @@
        <calljobstep id="step1" type="user.jobengine.server.steps.ArchiveListBuilderStep" weight="1">\r
                <inputs>\r
                        <input>\r
-                               <parameter name="inputFolder" />\r
+                               <parameter name="sourcePath" />\r
                        </input>\r
                </inputs>\r
                <outputs>\r
@@ -26,7 +26,7 @@
        <calljobstep id="step2" type="user.jobengine.server.steps.ArchiveMaterialSubmitStep" weight="1">\r
                <inputs>\r
                        <input>\r
-                               <parameter name="globalInputFolder" />\r
+                               <parameter name="globalSourcePath" />\r
                        </input>\r
                        <input>\r
                                <variable name="archiveList" />\r
index 96f53ce395e3726bb2d1341728e2b6c77d9b06fb..86f5c8ef7b7f3867d546bc48f29eb1f5ce805536 100644 (file)
@@ -2,7 +2,7 @@
 <jobtemplate name="Anyagok törlése">\r
        <declarations>\r
                <parameters>\r
-                       <parameter name="inputFolder" type="java.lang.String"/>\r
+                       <parameter name="sourcePath" type="java.lang.String"/>\r
                        <parameter name="userName" type="java.lang.String"/>\r
                        <parameter name="password" type="java.lang.String"/>\r
                </parameters>\r
@@ -11,7 +11,7 @@
                <calljobstep id="id1" type="user.jobengine.server.steps.DeleteMaterialsStep" weight="1">\r
                        <inputs>\r
                                <input>\r
-                                       <parameter name="inputFolder" />\r
+                                       <parameter name="sourcePath" />\r
                                </input>\r
                                <input>\r
                                        <parameter name="userName" />\r
index cae277b0281c0bece90c98d9e7a88042cab723c4..6f381175e003f0a0b3b8c40a5569827fe772a647 100644 (file)
@@ -1,10 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>\r
 <jobtemplate name="Archivált anyag visszatöltése">\r
        <declarations>\r
-               <variables>\r
-                       <variable name="mediaCubeMedia" type="user.jobengine.db.Media" />\r
-                       <variable name="outputPath" type="java.lang.String" />\r
-               </variables>\r
+               <parameters>\r
+                       <parameter name="mediaCubeMedia" type="user.jobengine.db.Media" />\r
+                       <parameter name="targetPath" type="java.lang.String" />\r
+                       <parameter name="targetNamePattern" type="java.lang.String" />\r
+               </parameters>\r
        </declarations>\r
        <commands>\r
                <calljobstep id="id1" type="user.jobengine.server.steps.TSMRestoreStep" weight="1">\r
                                        <parameter name="mediaCubeMedia" />\r
                                </input>\r
                                <input>\r
-                                       <parameter name="outputPath" />\r
+                                       <parameter name="targetPath" />\r
+                               </input>\r
+                               <input>\r
+                                       <parameter name="targetNamePattern" />\r
                                </input>\r
                        </inputs>\r
                </calljobstep>\r
index b16ecb8f37d5a79d726c05b3f5e92cf0700aaf1a..0f9c1eb604777d33dfc0c2bacc30ab98c743a594 100644 (file)
@@ -2,18 +2,18 @@
 <jobtemplate name="TRAFFIC anyagok visszatöltése">\r
        <declarations>\r
                <parameters>\r
-                       <parameter name="inputPath" type="java.lang.String" />\r
-                       <parameter name="outputPath" type="java.lang.String" />\r
+                       <parameter name="sourcePath" type="java.lang.String" />\r
+                       <parameter name="targetPath" type="java.lang.String" />\r
                </parameters>\r
        </declarations>\r
        <commands>\r
                <calljobstep id="id1" type="user.jobengine.server.steps.CheckMORPHEUSMissingMaterialsStep" weight="1">\r
                        <inputs>\r
                                <input>\r
-                                       <parameter name="inputPath" />\r
+                                       <parameter name="sourcePath" />\r
                                </input>\r
                                <input>\r
-                                       <parameter name="outputPath" />\r
+                                       <parameter name="targetPath" />\r
                                </input>\r
                        </inputs>\r
                </calljobstep>\r
diff --git a/server/user.jobengine.executors/jobtemplates/retrieve-ondemand-material.xml b/server/user.jobengine.executors/jobtemplates/retrieve-ondemand-material.xml
new file mode 100644 (file)
index 0000000..b1f806e
--- /dev/null
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>\r
+<jobtemplate name="Archivált anyag visszatöltése">\r
+       <declarations>\r
+               <parameters>\r
+                       <parameter name="mediaCubeMedia" type="user.jobengine.db.Media" />\r
+                       <parameter name="houseId" type="java.lang.String" />\r
+               </parameters>\r
+               <variables>\r
+                       <variable name="targetPath" type="java.lang.String" />\r
+                       <variable name="targetNamePattern" type="java.lang.String" />\r
+               </variables>\r
+       </declarations>\r
+       <commands>\r
+               <calljobstep type="user.jobengine.server.steps.OutputPathAndNameSelectorStep" weight="1">\r
+                       <inputs>\r
+                               <input>\r
+                                       <parameter name="mediaCubeMedia" />\r
+                               </input>\r
+                               <input>\r
+                                       <parameter name="houseId" />\r
+                               </input>\r
+                       </inputs>\r
+                       <outputs>\r
+                               <output>\r
+                                       <variable name="targetPath" />\r
+                               </output>\r
+                               <output>\r
+                                       <variable name="targetNamePattern" />\r
+                               </output>\r
+                       </outputs>                      \r
+               </calljobstep>\r
+               <calljobstep type="user.jobengine.server.steps.TSMRestoreStep" weight="1">\r
+                       <inputs>\r
+                               <input>\r
+                                       <parameter name="mediaCubeMedia" />\r
+                               </input>\r
+                               <input>\r
+                                       <parameter name="targetPath" />\r
+                               </input>\r
+                               <input>\r
+                                       <parameter name="targetNamePattern" />\r
+                               </input>\r
+                       </inputs>\r
+               </calljobstep>\r
+       </commands>\r
+</jobtemplate>
\ No newline at end of file
index 2e5682b97b8fcbfa30ce4f7fe614bf38ee1bdda2..c31360cb053ea43aa4a86132d6531312d0e04781 100644 (file)
@@ -6,7 +6,7 @@
                        <parameter name="userName" type="java.lang.String" />\r
                        <parameter name="password" type="java.lang.String" />\r
                        <parameter name="lookupDays" type="java.lang.Integer" />\r
-                       <parameter name="outputPath" type="java.lang.String" />\r
+                       <parameter name="targetPath" type="java.lang.String" />\r
                </parameters>\r
        </declarations>\r
        <commands>\r
@@ -25,7 +25,7 @@
                                        <parameter name="lookupDays" />\r
                                </input>\r
                                <input>\r
-                                       <parameter name="outputPath" />\r
+                                       <parameter name="targetPath" />\r
                                </input>\r
                        </inputs>\r
                </calljobstep>\r
index 3724cfd36ed62ae146948c04edc72affea7c79c9..bbc0b511bdb873d556a8d9b0d34a7ef14430e028 100644 (file)
@@ -76,11 +76,11 @@ public class ArchiveListBuilderStep extends JobStep {
        }\r
 \r
        @StepEntry\r
-       public Object[] execute(String inputFolder, IJobEngine jobEngine, IJobRuntime jobRuntime) {\r
+       public Object[] execute(String sourcePath, IJobEngine jobEngine, IJobRuntime jobRuntime) {\r
                List<ArchiveItem> archiveList = new ArrayList<ArchiveItem>();\r
                DirectoryStream<Path> directoryStream = null;\r
                try {\r
-                       Files.newDirectoryStream(Paths.get(inputFolder)).forEach(p -> processPathItem(p, archiveList));\r
+                       Files.newDirectoryStream(Paths.get(sourcePath)).forEach(p -> processPathItem(p, archiveList));\r
                } catch (Exception e) {\r
                        logger.error("", e);\r
                } finally {\r
index bea945bfb6849820576c292bc531d6b46426f4f1..234332c93723e0f0a9cccdd0527c18b0cd6e6105 100644 (file)
@@ -16,18 +16,18 @@ import user.jobengine.server.IJobRuntime;
  */\r
 public class ArchiveMaterialSubmitStep extends JobStep {\r
        private static final String ARCHIVE = "Archiválás";\r
-       private static final String GLOBAL_INPUT_FOLDER = "globalInputFolder";\r
+       private static final String GLOBAL_SOURCE_PATH = "globalSourcePath";\r
        private static final Logger logger = LogManager.getLogger();\r
        private static final String JOBTEMPLATE = "archive-material.xml";\r
        private static final String ARCHIVE_ITEM = "archiveItem";\r
 \r
        @StepEntry\r
-       public Object[] execute(String globalInputFolder, ArrayList<ArchiveItem> archiveList, IJobEngine jobEngine, IJobRuntime jobRuntime) {\r
+       public Object[] execute(String globalSourcePath, ArrayList<ArchiveItem> archiveList, IJobEngine jobEngine, IJobRuntime jobRuntime) {\r
                try {\r
                        for (ArchiveItem archiveItem : archiveList) {\r
                                try {\r
                                        IJobRuntime submit = jobEngine.submit(JOBTEMPLATE, ARCHIVE,\r
-                                                       ListUtils.asMap(ARCHIVE_ITEM, archiveItem, GLOBAL_INPUT_FOLDER, globalInputFolder));\r
+                                                       ListUtils.asMap(ARCHIVE_ITEM, archiveItem, GLOBAL_SOURCE_PATH, globalSourcePath));\r
                                } catch (Exception e) {\r
                                        if (archiveItem != null)\r
                                                archiveItem.removeCatchedFile();\r
index 9bb0b89ebdf17a7e8be1b9fe3aa4a654a2e47db2..d166e18af11840fff0aba41857e867e36815c1dd 100644 (file)
@@ -29,16 +29,16 @@ public class CheckMORPHEUSMissingMaterialsStep extends JobStep {
        private static final String MEDIA_CUBE_MEDIA = "mediaCubeMedia";\r
        private static final String JOBTEMPLATE = "retrieve-material.xml";\r
        private static final String CSV_EXT = ".csv";\r
-       private String outputPath;\r
+       private String targetPath;\r
        private MediaFileDAO dao;\r
        private IJobEngine jobEngine;\r
 \r
        @StepEntry\r
-       public Object[] execute(String inputPath, String outputPath, IJobEngine jobEngine, IJobRuntime jobRuntime) throws Exception {\r
-               setAndCheck(inputPath, outputPath, jobEngine);\r
+       public Object[] execute(String sourcePath, String targetPath, IJobEngine jobEngine, IJobRuntime jobRuntime) throws Exception {\r
+               setAndCheck(sourcePath, targetPath, jobEngine);\r
                DirectoryStream<Path> directoryStream = null;\r
                try {\r
-                       Files.newDirectoryStream(Paths.get(inputPath)).forEach(p -> processPathItem(p));\r
+                       Files.newDirectoryStream(Paths.get(sourcePath)).forEach(p -> processPathItem(p));\r
                } catch (Exception e) {\r
                        logger.error("", e);\r
                } finally {\r
@@ -64,7 +64,7 @@ public class CheckMORPHEUSMissingMaterialsStep extends JobStep {
                        return;\r
                }\r
 \r
-               jobEngine.submit(JOBTEMPLATE, RETRIEVE_MATERIAL, ListUtils.asMap(MEDIA_CUBE_MEDIA, medias.get(0), OUTPUT_PATH, outputPath));\r
+               jobEngine.submit(JOBTEMPLATE, RETRIEVE_MATERIAL, ListUtils.asMap(MEDIA_CUBE_MEDIA, medias.get(0), OUTPUT_PATH, targetPath));\r
        }\r
 \r
        private void processMissingMaterialCSV(Path csvFilePath) throws Exception {\r
@@ -111,7 +111,7 @@ public class CheckMORPHEUSMissingMaterialsStep extends JobStep {
                        logger.error(getMarker(), "A {} MORPHEUS állomány nem törölhető.", csvFile.getName());\r
        }\r
 \r
-       private void setAndCheck(String inputPath, String outputPath, IJobEngine jobEngine) {\r
+       private void setAndCheck(String sourcePath, String targetPath, IJobEngine jobEngine) {\r
                if (jobEngine == null) {\r
                        logger.error(getMarker(), "Az folyamatkezelő réteg nem elérhető.");\r
                        throw new NullPointerException("Internal error, missing JobEngine reference.");\r
@@ -126,15 +126,15 @@ public class CheckMORPHEUSMissingMaterialsStep extends JobStep {
                        logger.error(getMarker(), "Az adatbáziskezelő réteg MediaFile kezelöje nem elérhető.");\r
                        throw new NullPointerException("Internal error, missing MediaFile DAO reference.");\r
                }\r
-               if (inputPath == null) {\r
-                       logger.error(getMarker(), "A folyamat 'inputPath' bemeneti paramétere üres.");\r
-                       throw new NullPointerException("System is not configured properly, 'inputPath' input parameter missing.");\r
+               if (sourcePath == null) {\r
+                       logger.error(getMarker(), "A folyamat 'sourcePath' bemeneti paramétere üres.");\r
+                       throw new NullPointerException("System is not configured properly, 'sourcePath' input parameter missing.");\r
                }\r
-               if (outputPath == null) {\r
-                       logger.error(getMarker(), "A folyamat 'outputPath' bemeneti paramétere üres.");\r
-                       throw new NullPointerException("System is not configured properly, 'outputPath' input parameter missing.");\r
+               if (targetPath == null) {\r
+                       logger.error(getMarker(), "A folyamat 'targetPath' bemeneti paramétere üres.");\r
+                       throw new NullPointerException("System is not configured properly, 'targetPath' input parameter missing.");\r
                }\r
-               this.outputPath = outputPath;\r
+               this.targetPath = targetPath;\r
        }\r
 \r
 }\r
index a5b9dc1bf6c5ee42c8f635007c9f72ac39dba574..d54e055e8ed14f199634e8c2d99524061cd92c6a 100644 (file)
@@ -27,7 +27,7 @@ public class CheckTRAFFICMissingMaterialsStep extends JobStep {
        private static final String JOBTEMPLATE = "retrieve-material.xml";\r
 \r
        @StepEntry\r
-       public Object[] execute(String dbUrl, String userName, String password, int lookupDays, String outputPath, IJobEngine jobEngine, IJobRuntime jobRuntime)\r
+       public Object[] execute(String dbUrl, String userName, String password, int lookupDays, String targetPath, IJobEngine jobEngine, IJobRuntime jobRuntime)\r
                        throws Exception {\r
 \r
                try (Connection con = getConnection(dbUrl, userName, password); PreparedStatement stmt = con.prepareStatement(SQL)) {\r
@@ -39,7 +39,7 @@ public class CheckTRAFFICMissingMaterialsStep extends JobStep {
                                                continue;\r
 \r
                                        try {\r
-                                               processTrafficId(trafficId, outputPath, jobEngine);\r
+                                               processTrafficId(trafficId, targetPath, jobEngine);\r
                                        } catch (Exception e) {\r
                                                logger.error(getMarker(), "Hiba lépett fel az {} anyag visszatöltéskor. A rendszer hibaüzenete: {}", trafficId, e.getMessage());\r
                                        }\r
@@ -66,7 +66,7 @@ public class CheckTRAFFICMissingMaterialsStep extends JobStep {
                return result;\r
        }\r
 \r
-       private void processTrafficId(String trafficId, String outputPath, IJobEngine jobEngine) throws Exception {\r
+       private void processTrafficId(String trafficId, String targetPath, IJobEngine jobEngine) throws Exception {\r
                IItemManager manager = jobEngine.getItemManager();\r
                MediaFileDAO dao = (MediaFileDAO) manager.getBaseDAO(MediaFile.class);\r
                List<IEntityBase> medias = dao.getByHouseId(trafficId);\r
@@ -81,7 +81,7 @@ public class CheckTRAFFICMissingMaterialsStep extends JobStep {
                }\r
 \r
                String title = "Traffic adásanyag visszatöltés: " + trafficId;\r
-               jobEngine.submit(JOBTEMPLATE, title, ListUtils.asMap(MEDIA_CUBE_MEDIA, medias.get(0), OUTPUT_PATH, outputPath));\r
+               jobEngine.submit(JOBTEMPLATE, title, ListUtils.asMap(MEDIA_CUBE_MEDIA, medias.get(0), OUTPUT_PATH, targetPath));\r
        }\r
 \r
 }\r
index 759173f5bef306e47e89744b07671152441fee5b..9c15de32d3c265bc525d36ce9a0a324a21ab3db7 100644 (file)
@@ -24,13 +24,13 @@ public class DeleteMaterialsStep extends JobStep {
        private StoreUri sourceUri;\r
 \r
        @StepEntry\r
-       public Object[] execute(String inputFolder, String userName, String password, IJobEngine jobEngine, IJobRuntime jobRuntime) {\r
-               if (StringUtils.isBlank(inputFolder)) {\r
-                       logger.error(getMarker(), "A folyamat 'inputFolder' bemeneti paramétere üres.");\r
-                       throw new NullPointerException("System is not configured properly, 'inputFolder' input parameter missing.");\r
+       public Object[] execute(String sourceFolder, String userName, String password, IJobEngine jobEngine, IJobRuntime jobRuntime) {\r
+               if (StringUtils.isBlank(sourceFolder)) {\r
+                       logger.error(getMarker(), "A folyamat 'sourceFolder' bemeneti paramétere üres.");\r
+                       throw new NullPointerException("System is not configured properly, 'sourceFolder' input parameter missing.");\r
                }\r
                IItemManager manager = jobEngine.getItemManager();\r
-               sourceUri = manager.createStoreUri(RemoteStoreProtocol.SMB, inputFolder);\r
+               sourceUri = manager.createStoreUri(RemoteStoreProtocol.SMB, sourceFolder);\r
                sourceUri.setUserName(userName);\r
                sourceUri.setPassword(password);\r
                try {\r
index 0525d7b42b4723328fca334e98647849d69587cc..b3fb5dbd702165c2d585b03d60bab454f81bf2cd 100644 (file)
@@ -27,7 +27,7 @@ import user.jobengine.server.JobEngineException;
 public class TSMBackupStep extends JobStep {\r
        private static final Logger logger = LogManager.getLogger();\r
        private IItemManager manager;\r
-       private Path inputMediaFile;\r
+       private Path sourceMediaFile;\r
        private Store tsmStore;\r
        private StoreUri targetUri;\r
        private FileType fileType;\r
@@ -37,7 +37,7 @@ public class TSMBackupStep extends JobStep {
                try {\r
                        setAndCheck(archiveItem, mediaCubeMedia, jobEngine);\r
 \r
-                       StoreUri sourceUri = manager.createStoreUri(RemoteStoreProtocol.LOCAL, inputMediaFile.getParent().toString());\r
+                       StoreUri sourceUri = manager.createStoreUri(RemoteStoreProtocol.LOCAL, sourceMediaFile.getParent().toString());\r
 \r
                        final IJobRuntime runtime = jobRuntime;\r
                        sourceUri.addProgressListener(new IProgressEventListener() {\r
@@ -52,7 +52,7 @@ public class TSMBackupStep extends JobStep {
                                        evt.setCancel(!canContinue());\r
                                }\r
                        });\r
-                       String sourceFileName = inputMediaFile.toFile().getName();\r
+                       String sourceFileName = sourceMediaFile.toFile().getName();\r
                        RemoteFile remoteFile = sourceUri.transferFrom(targetUri, sourceFileName, sourceFileName);\r
 \r
                        String name = getHouseId(archiveItem);\r
@@ -102,14 +102,14 @@ public class TSMBackupStep extends JobStep {
                        logger.error(getMarker(), "A folyamat 'archiveItem' bemeneti paramétere üres.");\r
                        throw new NullPointerException("System is not configured properly, missing 'archiveItem' input parameter.");\r
                }\r
-               inputMediaFile = archiveItem.getMediaFile();\r
-               if (inputMediaFile == null) {\r
+               sourceMediaFile = archiveItem.getMediaFile();\r
+               if (sourceMediaFile == null) {\r
                        logger.error(getMarker(), "A folyamat 'archiveItem' bemeneti paraméter 'mediaFile' értéke üres.");\r
                        throw new NullPointerException("System is not configured properly, missing 'mediaFile' value in 'archiveItem' input parameter.");\r
                }\r
-               if (!inputMediaFile.toFile().exists()) {\r
-                       logger.error(getMarker(), "Az {} állomány nem létezik vagy nem érhető el.", inputMediaFile.toFile().getName());\r
-                       throw new IOException(String.format("Input file {} not exists or unreachable.", inputMediaFile.toFile().getName()));\r
+               if (!sourceMediaFile.toFile().exists()) {\r
+                       logger.error(getMarker(), "Az {} állomány nem létezik vagy nem érhető el.", sourceMediaFile.toFile().getName());\r
+                       throw new IOException(String.format("Input file {} not exists or unreachable.", sourceMediaFile.toFile().getName()));\r
                }\r
                tsmStore = manager.getSystemStore(false);\r
                if (tsmStore == null) {\r
index 0db98376431f5b905ebad425948450bd7c6d12fd..6077455097f01fd10397a74dc6b072327ff23b7d 100644 (file)
@@ -28,8 +28,8 @@ public class TSMRestoreStep extends JobStep {
        private String sourceFileName;\r
 \r
        @StepEntry\r
-       public Object[] execute(Media mediaCubeMedia, String outputPath, IJobEngine jobEngine, IJobRuntime jobRuntime) throws Exception {\r
-               setAndCheck(mediaCubeMedia, outputPath, jobEngine);\r
+       public Object[] execute(Media mediaCubeMedia, String targetPath, String targetNamePattern, IJobEngine jobEngine, IJobRuntime jobRuntime) throws Exception {\r
+               setAndCheck(mediaCubeMedia, targetPath, targetNamePattern, jobEngine);\r
                try {\r
                        //TODO check file existance?\r
                        final IJobRuntime runtime = jobRuntime;\r
@@ -45,7 +45,8 @@ public class TSMRestoreStep extends JobStep {
                                        evt.setCancel(!canContinue());\r
                                }\r
                        });\r
-                       RemoteFile result = sourceUri.transferFrom(targetUri, sourceFileName, sourceFileName);\r
+                       String targetFileName = String.format(targetNamePattern, sourceFileName);\r
+                       RemoteFile result = sourceUri.transferFrom(targetUri, sourceFileName, targetFileName);\r
                } catch (Exception e) {\r
                        logger.error(getMarker(), "A {} állomány visszatöltése sikertelen. A rendszer hibaüzenete: {}", sourceFileName, e.getMessage());\r
                        logger.catching(e);\r
@@ -66,7 +67,7 @@ public class TSMRestoreStep extends JobStep {
                return null;\r
        }\r
 \r
-       private void setAndCheck(Media mediaCubeMedia, String outputPath, IJobEngine jobEngine) {\r
+       private void setAndCheck(Media mediaCubeMedia, String targetPath, String targetNamePattern, IJobEngine jobEngine) {\r
                if (jobEngine == null) {\r
                        logger.error(getMarker(), "Az folyamatkezelő réteg nem elérhető.");\r
                        throw new NullPointerException("Internal error, missing JobEngine reference.");\r
@@ -80,9 +81,13 @@ public class TSMRestoreStep extends JobStep {
                        logger.error(getMarker(), "A folyamat 'mediaCubeMedia' bemeneti paramétere üres.");\r
                        throw new NullPointerException("System is not configured properly, 'mediaCubeMedia' input parameter missing.");\r
                }\r
-               if (StringUtils.isBlank(outputPath)) {\r
-                       logger.error(getMarker(), "A folyamat 'inputFolder' bemeneti paramétere üres.");\r
-                       throw new NullPointerException("System is not configured properly, 'inputFolder' input parameter missing.");\r
+               if (StringUtils.isBlank(targetPath)) {\r
+                       logger.error(getMarker(), "A folyamat 'targetPath' bemeneti paramétere üres.");\r
+                       throw new NullPointerException("System is not configured properly, 'targetPath' input parameter missing.");\r
+               }\r
+               if (StringUtils.isBlank(targetNamePattern)) {\r
+                       logger.error(getMarker(), "A folyamat 'targetNamePattern' bemeneti paramétere üres.");\r
+                       throw new NullPointerException("System is not configured properly, 'targetNamePattern' input parameter missing.");\r
                }\r
                Store tsmStore = manager.getSystemStore(false);\r
                if (tsmStore == null) {\r
@@ -94,7 +99,7 @@ public class TSMRestoreStep extends JobStep {
                        logger.error(getMarker(), "A TSM rendszer beállítás paraméterei nem elérhetőek.");\r
                        throw new NullPointerException("System is not configured properly, missing TSM StoreUri.");\r
                }\r
-               targetUri = manager.createStoreUri(RemoteStoreProtocol.LOCAL, outputPath);\r
+               targetUri = manager.createStoreUri(RemoteStoreProtocol.LOCAL, targetPath);\r
                sourceFileName = getSourceFileName(mediaCubeMedia, tsmStore);\r
                if (sourceFileName == null) {\r
                        logger.error(getMarker(), "Adatbázis bejegyzés hiba, a visszatöltendő fájl neve nem található.");\r
index 6b9ff175bbaa633210a8950036671fc0ab0c98c2..67461133a7de06cc0e2a88c78c6147225f80f3a3 100644 (file)
@@ -67,7 +67,7 @@ public class TranscodeSELENIOStep extends JobStep {
                }\r
        }\r
 \r
-       private TranscodeRequest buildTranscodeRequest(String projectFilePath, String sourceFilePath, String outputPath) throws java.lang.Exception {\r
+       private TranscodeRequest buildTranscodeRequest(String projectFilePath, String sourceFilePath, String targetPath) throws java.lang.Exception {\r
                Clip clip = new Clip();\r
                MediaFile mediaFile = new MediaFile();\r
                mediaFile.setFile(sourceFilePath);\r
@@ -94,7 +94,7 @@ public class TranscodeSELENIOStep extends JobStep {
                TranscodeDestination transcodeDestination = new TranscodeDestination();\r
 \r
                //transcodeDestination.setOutputWriteDirectory(outputPath);\r
-               transcodeDestination.setOutputPostMoveDirectory(outputPath);\r
+               transcodeDestination.setOutputPostMoveDirectory(targetPath);\r
                transcodeRequest.setTranscodeDestination(transcodeDestination);\r
                return transcodeRequest;\r
        }\r
index f11681f8ccb4da8c514baf29703d5ca2cb9d0c8d..f7cbeee35ab72db6abb62f1cab57d7d2d8f37be9 100644 (file)
@@ -31,7 +31,7 @@
 <body>\r
 \r
 <%if(!"".equals(mediaURL) && !mediaURL.endsWith("empty.zul")){%>\r
-  <video id="myVideoDiv" class="video-js" controls preload="auto" poster="/zk/img/media_poster.png" data-setup="{}">\r
+  <video id="myVideoDiv" class="video-js" controls preload="auto" data-setup="{}">\r
        <source src="<%=mediaURL%>" type='video/mp4'>\r
     <!--source src="/zk/media_oceans.mp4" type='video/mp4' -->\r
     <!--source src="MY_VIDEO.webm" type='video/webm' -->\r
index 3ead3e66ec61560232c998a39a0724ce1116a41b..7a8d822a6ac55de8e1ee097affd141a470b351f6 100644 (file)
                                        </groupbox>\r
 \r
                                        <groupbox vflex="true" closable="false">\r
-                                               <caption sclass="boldfont" label="Találatok" />\r
-                                               <listbox id="itemResults" model="@load(svm.searchResult)" multiple="false" autopaging="true" mold="paging" vflex="true"\r
+                                               <caption sclass="boldfont" label="Gyűjtők" />\r
+                                               <listbox id="itemResults" sizedByContent="false" span="true" model="@load(svm.searchResult)" multiple="false" autopaging="true" mold="paging" vflex="true"\r
                                                        selectedItem="@bind(svm.selectedItem)" style="border: none; background: #e3e3e3 !important;" oddRowSclass="listbox-odd-style"\r
                                                        sclass="listbox-normal-style">\r
-                                                       <listhead>\r
-                                                               <listheader label="Id" width="70px" sort="auto(id)" align="left" />\r
-                                                               <listheader label="Cím" width="120px" sort="auto(status)" align="left" />\r
-                                                               <listheader label="Leírás" width="120px" sort="auto(tipus)" align="left" />\r
+                                                       <listhead sizable="true">\r
+                                                               <listheader label="ID" hflex="min" align="left" />\r
+                                                               <listheader label="Cím" align="left" />\r
                                                        </listhead>\r
-\r
                                                        <template name="model">\r
                                                                <listitem>\r
-                                                                       <listcell label="@load(each.id)" />\r
+                                                                       <listcell label="@load(each.houseId)" />\r
                                                                        <listcell label="@load(each.title)" />\r
-                                                                       <listcell label="@load(each.description)" />\r
                                                                </listitem>\r
                                                        </template>\r
                                                </listbox>\r
                                        </groupbox>\r
 \r
                                        <groupbox vflex="true" closable="false">\r
-                                               <caption sclass="boldfont" label="Kapcsolódó anyagok" />\r
+                                               <caption sclass="boldfont" label="Anyagok" />\r
 \r
-                                               <listbox id="mediaList" onSelect="@command('onSelectMedia', media=event.reference.value)" model="@load(svm.selectedItem.medias)"\r
+                                               <listbox id="mediaList" sizedByContent="false" span="true" onSelect="@command('onSelectMedia', media=event.reference.value)" model="@load(svm.selectedItem.medias)"\r
                                                        multiple="false" vflex="true" selectedItem="@bind(svm.selectedMedia)" style="border: none; background: #e3e3e3 !important;"\r
                                                        oddRowSclass="listbox-odd-style" sclass="listbox-normal-style">\r
-                                                       <listhead>\r
-                                                               <listheader label="Id" width="70px" sort="auto(id)" align="left" />\r
-                                                               <listheader label="Cím" width="120px" sort="auto(status)" align="left" />\r
-                                                               <listheader label="Leírás" width="120px" sort="auto(tipus)" align="left" />\r
+                                                       <listhead sizable="true">\r
+                                                               <listheader label="ID" hflex="min" align="left" />\r
+                                                               <listheader label="Cím" align="left" />\r
                                                        </listhead>\r
-\r
                                                        <template name="model">\r
                                                                <listitem>\r
-                                                                       <listcell label="@load(each.id)" />\r
+                                                                       <listcell label="@load(each.houseId)" />\r
                                                                        <listcell label="@load(each.title)" />\r
-                                                                       <listcell label="@load(each.description)" />\r
                                                                </listitem>\r
                                                        </template>\r
                                                </listbox>\r
                        <center border="none">\r
 \r
                                <borderlayout height="100%" width="100%">\r
-                                       <north border="none" size="90%" splittable="true">\r
+                                       <north border="none" size="60%" splittable="true">\r
                                                <div align="center" height="100%" width="100%" visible="@load(svm.hasLowresMediaFile)">\r
-                                                       <label value="@bind(svm.selectedMedia.description)" />\r
+<!--                                                   <label value="@bind(svm.selectedMedia.description)" /> -->\r
                                                        <iframe id="mediaPlayer" height="100%" width="100%" autohide="false" src="@load(svm.lowresMediaFilePath)"></iframe>\r
                                                </div>\r
                                        </north>\r
-                                       <south border="none" size="10%">\r
-                                               <div align="center" height="100%" width="100%" visible="@load(svm.hasTSMMediaFile)">\r
+                                       <south border="none" size="40%" visible="@load(svm.hasLowresMediaFile)" >\r
+                                               <window title="@load(svm.selectedItem.title)" contentStyle="overflow:auto;">\r
+                                               <grid style="overflow: scroll;">\r
+                                                   <rows>\r
+                                                       <row visible="@load(svm.selectedItem.description)">\r
+                                                               <label style="font-size:8pt" value="Anyag leírása" />\r
+                                                               <label value="@load(svm.selectedItem.description)" />\r
+                                                       </row>\r
+                                                   </rows>\r
+                                               </grid>\r
                                                        <button label="Visszatöltés" onClick="@command('downloadMedia')" autodisable="self" disabled="@load(not svm.hasTSMMediaFile)"\r
                                                                sclass="buttonboldfont" />\r
-                                               </div>\r
+                                               </window>                                               \r
                                        </south>\r
                                </borderlayout>\r
 \r
index fa8323e7bb18141b4e8b01506b1b6df7bbb4bfc1..46c7cd64b00b7af9ff029baac4cbe0ea2bc965ce 100644 (file)
@@ -23,10 +23,8 @@ import user.jobengine.db.SearchResult;
 import user.jobengine.server.JobEngine;\r
 \r
 /**\r
-       Cachelt modell nagy listakhoz.\r
-       Cacheli a dokumentumokat a megadott meretben.\r
-       Az utoljara elkert index +- cacheSize/2\r
-*/\r
+ * Cachelt modell nagy listakhoz. Cacheli a dokumentumokat a megadott meretben. Az utoljara elkert index +- cacheSize/2\r
+ */\r
 public class CachedListModel extends ListModelList<Item> {\r
        private static final Logger logger = LogManager.getLogger();\r
        private int cacheSize = 500;\r
@@ -52,14 +50,55 @@ public class CachedListModel extends ListModelList<Item> {
                reinit();\r
        }\r
 \r
-       //kintrol is hivhatjak\r
-       public void reinit() {\r
+       //load cache event\r
+       public void addEventListener(EventListener listener) {\r
+               eventListenerList.add(listener);\r
+       }\r
+\r
+       public void clearAndReset() {\r
+               this.resultSetSize = -1;\r
                this.resultSetSize = -1;\r
                this.cacheStart = 0;\r
                this.cacheEnd = 0;\r
+\r
                clearCache();\r
        }\r
 \r
+       public void clearCache() {\r
+               cache.clear();\r
+               cache.clear();\r
+               docSelection.clear();\r
+       }\r
+\r
+       public void fireListEvent() {\r
+               clearCache();\r
+               fireEvent(ListDataEvent.STRUCTURE_CHANGED, -1, -1);\r
+       }\r
+\r
+       private void fireLoadCacheEvent() {\r
+               Event evt = new Event(Events.ON_SCROLL);\r
+               for (EventListener el : eventListenerList) {\r
+                       try {\r
+                               el.onEvent(evt);\r
+                       } catch (Exception e) {\r
+                               logger.error("", e);\r
+                       }\r
+               }\r
+       }\r
+\r
+       public int getCacheEnd() {\r
+               return cacheEnd;\r
+       }\r
+\r
+       //zul felulet hasznalja kiirashoz\r
+       public int getCacheStart() {\r
+               return cacheStart;\r
+       }\r
+\r
+       public int getDocSelectionCount() {\r
+               return docSelection.size();\r
+       }\r
+\r
        @Override\r
        public Item getElementAt(int index) {\r
                //logger.debug("CachedListMode.getElementAt(): " + index);\r
@@ -74,15 +113,6 @@ public class CachedListModel extends ListModelList<Item> {
                return ret;\r
        }\r
 \r
-       //zul felulet hasznalja kiirashoz   \r
-       public int getCacheStart() {\r
-               return cacheStart;\r
-       }\r
-\r
-       public int getCacheEnd() {\r
-               return cacheEnd;\r
-       }\r
-\r
        //ListModelList method felulirva\r
        //after 1. search ++++++++++\r
        @Override\r
@@ -112,7 +142,7 @@ public class CachedListModel extends ListModelList<Item> {
 \r
                        //DO SEARCH for startPos, endPos\r
                        //SearchResult sr = loadFakeItems(startPos, endPos);\r
-                       SearchResult sr = this.itemManager.searchItem(searchValue, startPos, endPos);\r
+                       SearchResult sr = this.itemManager.searchItem(searchValue + "*", startPos, endPos);\r
 \r
                        if (sr != null) {\r
                                if (this.resultSetSize < 0) {\r
@@ -140,46 +170,6 @@ public class CachedListModel extends ListModelList<Item> {
                }\r
        }\r
 \r
-       public void clearCache() {\r
-               cache.clear();\r
-               cache.clear();\r
-               docSelection.clear();\r
-       }\r
-\r
-       public void fireListEvent() {\r
-               clearCache();\r
-               fireEvent(ListDataEvent.STRUCTURE_CHANGED, -1, -1);\r
-       }\r
-\r
-       public void clearAndReset() {\r
-               this.resultSetSize = -1;\r
-               this.resultSetSize = -1;\r
-               this.cacheStart = 0;\r
-               this.cacheEnd = 0;\r
-\r
-               clearCache();\r
-       }\r
-\r
-       //load cache event\r
-       public void addEventListener(EventListener listener) {\r
-               eventListenerList.add(listener);\r
-       }\r
-\r
-       private void fireLoadCacheEvent() {\r
-               Event evt = new Event(Events.ON_SCROLL);\r
-               for (EventListener el : eventListenerList) {\r
-                       try {\r
-                               el.onEvent(evt);\r
-                       } catch (Exception e) {\r
-                               logger.error("", e);\r
-                       }\r
-               }\r
-       }\r
-\r
-       public int getDocSelectionCount() {\r
-               return docSelection.size();\r
-       }\r
-\r
        //TEST CODE\r
        private SearchResult loadFakeItems(int start, int end) {\r
                SearchResult sr = new SearchResult();\r
@@ -222,4 +212,12 @@ public class CachedListModel extends ListModelList<Item> {
                return sr;\r
        }\r
 \r
+       //kintrol is hivhatjak\r
+       public void reinit() {\r
+               this.resultSetSize = -1;\r
+               this.cacheStart = 0;\r
+               this.cacheEnd = 0;\r
+               clearCache();\r
+       }\r
+\r
 }
\ No newline at end of file