From: Vásáry Dániel Date: Fri, 29 Jun 2018 09:24:22 +0000 (+0000) Subject: git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube... X-Git-Url: http://git.useribm.hu/?a=commitdiff_plain;h=80ee54227753b0c645dbae34b8dbf471d2968a3c;p=mediacube.git git-tfs-id: [tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube;C31137 --- diff --git a/server/-configuration/scheduledjobs.json b/server/-configuration/scheduledjobs.json index 5da5c503..abd4df80 100644 --- a/server/-configuration/scheduledjobs.json +++ b/server/-configuration/scheduledjobs.json @@ -5,7 +5,8 @@ "name" : "SYS: recreate-lowres", "template": "sys-recreate-lowres.xml", "parameters": [ - {"name": "filePath", "value": "c:/_downloads/Silicon.Valley.S04E08.HDTV.x264.HUN-SFY/Silicon.Valley.S04E08.HDTV.x264.HUN-SFY.mkv", "type": "java.lang.String" } + {"name": "localHiresPath", "value": "", "type": "java.lang.String" }, + {"name": "globalRetrievePath", "value": "", "type": "java.lang.String" } ] }, { @@ -16,9 +17,12 @@ "name" : "SYS: retrieve-ondemand", "template": "retrieve-ondemand.xml", "parameters": [ - {"name": "trafficOutputPath", "value": "/mnt/ISILON/PLAYOUT_NLE", "type": "java.lang.String"}, - {"name": "octopusOutputPath", "value": "/mnt/ISILON/OCTOPUS", "type": "java.lang.String"}, - {"name": "genericOutputPath", "value": "/mnt/ISILON/ARCHIVE_RESTORE", "type": "java.lang.String"}, + {"name": "globalRetrievePath", "value": "file://isilon.intra.echotv.hu", "type": "java.lang.String"}, + {"name": "localRetrievePath", "value": "/mnt/ISILON", "type": "java.lang.String"}, + {"name": "trafficOutputFolder", "value": "PLAYOUT_NLE", "type": "java.lang.String"}, + {"name": "octopusOutputFolder", "value": "OCTOPUS", "type": "java.lang.String"}, + {"name": "genericOutputFolder", "value": "ARCHIVE_RESTORE", "type": "java.lang.String"}, + {"name": "retrieveToNexio", "value": false, "type": "java.lang.Boolean"}, {"name": "killDateDays", "value": 7, "type": "java.lang.Integer"} ] }, diff --git a/server/user.jobengine.executors/jobtemplates/retrieve-ondemand.xml b/server/user.jobengine.executors/jobtemplates/retrieve-ondemand.xml index da99265b..5e776672 100644 --- a/server/user.jobengine.executors/jobtemplates/retrieve-ondemand.xml +++ b/server/user.jobengine.executors/jobtemplates/retrieve-ondemand.xml @@ -2,9 +2,12 @@ - - - + + + + + + @@ -19,13 +22,19 @@ - + - + - + + + + + + + @@ -57,6 +66,12 @@ + + + + + + diff --git a/server/user.jobengine.executors/jobtemplates/import-morpheus-missing-materials.xml b/server/user.jobengine.executors/jobtemplates/sys-import-morpheus-missing-materials.xml similarity index 100% rename from server/user.jobengine.executors/jobtemplates/import-morpheus-missing-materials.xml rename to server/user.jobengine.executors/jobtemplates/sys-import-morpheus-missing-materials.xml diff --git a/server/user.jobengine.executors/jobtemplates/sys-recreate-length.xml b/server/user.jobengine.executors/jobtemplates/sys-recreate-length.xml index ccf8632a..e9ec0f9b 100644 --- a/server/user.jobengine.executors/jobtemplates/sys-recreate-length.xml +++ b/server/user.jobengine.executors/jobtemplates/sys-recreate-length.xml @@ -3,6 +3,7 @@ + @@ -58,6 +59,12 @@ + + + + + + diff --git a/server/user.jobengine.executors/jobtemplates/retrieve-missing-material.xml b/server/user.jobengine.executors/jobtemplates/sys-retrieve-missing-material.xml similarity index 79% rename from server/user.jobengine.executors/jobtemplates/retrieve-missing-material.xml rename to server/user.jobengine.executors/jobtemplates/sys-retrieve-missing-material.xml index cc96b017..afff5429 100644 --- a/server/user.jobengine.executors/jobtemplates/retrieve-missing-material.xml +++ b/server/user.jobengine.executors/jobtemplates/sys-retrieve-missing-material.xml @@ -4,6 +4,7 @@ + @@ -15,6 +16,9 @@ + + + diff --git a/server/user.jobengine.executors/src/user/jobengine/server/steps/OutputPathAndNameSelectorStep.java b/server/user.jobengine.executors/src/user/jobengine/server/steps/OutputPathAndNameSelectorStep.java index 927c6679..6e1a7f8d 100644 --- a/server/user.jobengine.executors/src/user/jobengine/server/steps/OutputPathAndNameSelectorStep.java +++ b/server/user.jobengine.executors/src/user/jobengine/server/steps/OutputPathAndNameSelectorStep.java @@ -23,18 +23,22 @@ public class OutputPathAndNameSelectorStep extends JobStep { private static final Logger logger = LogManager.getLogger(); - private void check(String trafficOutputPath, String octopusOutputPath, String genericOutputPath, String houseId) { - if (StringUtils.isBlank(trafficOutputPath)) { - logger.error(getMarker(), "A folyamat 'trafficOutputPath' bemeneti paramétere üres."); - throw new NullPointerException("System is not configured properly, 'trafficOutputPath' input parameter missing."); + private void check(String localRetrievePath, String trafficOutputFolder, String octopusOutputFolder, String genericOutputFolder, String houseId) { + if (StringUtils.isBlank(localRetrievePath)) { + logger.error(getMarker(), "A folyamat 'localRetrievePath' bemeneti paramétere üres."); + throw new NullPointerException("System is not configured properly, 'localRetrievePath' input parameter missing."); } - if (StringUtils.isBlank(octopusOutputPath)) { - logger.error(getMarker(), "A folyamat 'octopusOutputPath' bemeneti paramétere üres."); - throw new NullPointerException("System is not configured properly, 'octopusOutputPath' input parameter missing."); + if (StringUtils.isBlank(trafficOutputFolder)) { + logger.error(getMarker(), "A folyamat 'trafficOutputFolder' bemeneti paramétere üres."); + throw new NullPointerException("System is not configured properly, 'trafficOutputFolder' input parameter missing."); } - if (StringUtils.isBlank(genericOutputPath)) { - logger.error(getMarker(), "A folyamat 'genericOutputPath' bemeneti paramétere üres."); - throw new NullPointerException("System is not configured properly, 'genericOutputPath' input parameter missing."); + if (StringUtils.isBlank(octopusOutputFolder)) { + logger.error(getMarker(), "A folyamat 'octopusOutputFolder' bemeneti paramétere üres."); + throw new NullPointerException("System is not configured properly, 'octopusOutputFolder' input parameter missing."); + } + if (StringUtils.isBlank(genericOutputFolder)) { + logger.error(getMarker(), "A folyamat 'genericOutputFolder' bemeneti paramétere üres."); + throw new NullPointerException("System is not configured properly, 'genericOutputFolder' input parameter missing."); } if (StringUtils.isBlank(houseId)) { logger.error(getMarker(), "A folyamat 'houseId' bemeneti paramétere üres."); @@ -43,23 +47,23 @@ public class OutputPathAndNameSelectorStep extends JobStep { } @StepEntry - public Object[] execute(String trafficOutputPath, String octopusOutputPath, String genericOutputPath, String houseId, IJobEngine jobEngine, - IJobRuntime jobRuntime) throws IOException { - check(trafficOutputPath, octopusOutputPath, genericOutputPath, houseId); + public Object[] execute(String localRetrievePath, String trafficOutputFolder, String octopusOutputFolder, String genericOutputFolder, + boolean retrieveToNexio, String houseId, IJobEngine jobEngine, IJobRuntime jobRuntime) throws IOException { + check(localRetrievePath, trafficOutputFolder, octopusOutputFolder, genericOutputFolder, houseId); String id = houseId.toUpperCase(); MetadataType mdType = MetadataTypeDetector.GuessMetadataType(id); String targetPath = null; switch (mdType) { case GENERIC: - targetPath = Paths.get(genericOutputPath, id).toString(); + targetPath = Paths.get(localRetrievePath, genericOutputFolder, id).toString(); break; case OCTOPUSPLACEHOLDER: case OCTOPUSSTORY: - targetPath = getPossiblePath(id, Paths.get(octopusOutputPath, id)).toString(); + targetPath = getPossiblePath(id, Paths.get(localRetrievePath, octopusOutputFolder, id)).toString(); break; case TRAFFIC: - targetPath = getPossiblePath(id, Paths.get(trafficOutputPath, id)).toString(); + targetPath = getPossiblePath(id, Paths.get(localRetrievePath, trafficOutputFolder, id)).toString(); break; } String targetNamePattern = houseId + TARGETNAMEPATTERN; diff --git a/server/user.jobengine.executors/src/user/jobengine/server/steps/TSMRestoreStep.java b/server/user.jobengine.executors/src/user/jobengine/server/steps/TSMRestoreStep.java index 854d9372..65827e65 100644 --- a/server/user.jobengine.executors/src/user/jobengine/server/steps/TSMRestoreStep.java +++ b/server/user.jobengine.executors/src/user/jobengine/server/steps/TSMRestoreStep.java @@ -1,5 +1,6 @@ package user.jobengine.server.steps; +import java.nio.file.Paths; import java.util.List; import org.apache.commons.lang.StringUtils; @@ -33,10 +34,10 @@ public class TSMRestoreStep extends JobStep { private Marker marker; @StepEntry - public Object[] execute(Media mediaCubeMedia, String targetPath, String targetNamePattern, String successRecipient, int killDateDays, IJobEngine jobEngine, - IJobRuntime jobRuntime) throws Exception { + public Object[] execute(Media mediaCubeMedia, String targetPath, String targetNamePattern, String successRecipient, int killDateDays, + String localRetrievePath, String globalRetrievePath, IJobEngine jobEngine, IJobRuntime jobRuntime) throws Exception { marker = jobRuntime.getMarker(); - setAndCheck(mediaCubeMedia, targetPath, targetNamePattern, jobEngine); + setAndCheck(mediaCubeMedia, targetPath, targetNamePattern, localRetrievePath, globalRetrievePath, jobEngine); String targetFileName = null; try { //TODO check file existance? @@ -56,7 +57,12 @@ public class TSMRestoreStep extends JobStep { targetFileName = String.format(targetNamePattern, sourceFileName); RemoteFile result = sourceUri.transferFrom(targetUri, sourceFileName, targetFileName); - Message msg = LogUtils.format("Az '{}' állomány visszatöltése sikeres volt az '{}' néven.", sourceFileName, targetFileName); + String globalTargetPath = Paths.get(targetPath, targetFileName).getParent().toString().replace(Paths.get(localRetrievePath).toString(), + globalRetrievePath); + + Message msg = LogUtils.format( + "Az '{}' állomány visszatöltése sikeres volt '{}' néven. A célmappa a ide kattintva nyitható meg.", + sourceFileName, targetFileName, globalTargetPath); if (StringUtils.isNotBlank(successRecipient)) logger.info(new MediaCubeMarker(successRecipient), msg); logger.info(marker, msg); @@ -86,7 +92,8 @@ public class TSMRestoreStep extends JobStep { return null; } - private void setAndCheck(Media mediaCubeMedia, String targetPath, String targetNamePattern, IJobEngine jobEngine) { + private void setAndCheck(Media mediaCubeMedia, String targetPath, String targetNamePattern, String localRetrievePath, String globalRetrievePath, + IJobEngine jobEngine) { if (jobEngine == null) { logger.error(marker, "Az folyamatkezelő réteg nem elérhető."); throw new NullPointerException("Internal error, missing JobEngine reference."); @@ -124,5 +131,14 @@ public class TSMRestoreStep extends JobStep { logger.error(marker, "Adatbázis bejegyzés hiba, a visszatöltendő fájl neve nem található."); throw new NullPointerException("Database error, missing MediaFile 'relativePath'."); } + + if (StringUtils.isBlank(localRetrievePath)) { + logger.error(marker, "A folyamat 'localRetrievePath' bemeneti paramétere üres."); + throw new NullPointerException("System is not configured properly, 'localRetrievePath' input parameter missing."); + } + if (StringUtils.isBlank(globalRetrievePath)) { + logger.error(marker, "A folyamat 'globalRetrievePath' bemeneti paramétere üres."); + throw new NullPointerException("System is not configured properly, 'globalRetrievePath' input parameter missing."); + } } } diff --git a/server/user.jobengine.executors/src/user/jobengine/server/steps/TSMRetrieveMissingMaterialStep.java b/server/user.jobengine.executors/src/user/jobengine/server/steps/TSMRetrieveMissingMaterialStep.java index efb9e908..f28782f3 100644 --- a/server/user.jobengine.executors/src/user/jobengine/server/steps/TSMRetrieveMissingMaterialStep.java +++ b/server/user.jobengine.executors/src/user/jobengine/server/steps/TSMRetrieveMissingMaterialStep.java @@ -19,11 +19,12 @@ public class TSMRetrieveMissingMaterialStep extends TSMRestoreStep { private static final Logger logger = LogManager.getLogger(); @StepEntry - public Object[] execute(BasicDBObject material, String targetPath, IJobEngine jobEngine, IJobRuntime jobRuntime) throws Exception { + public Object[] execute(BasicDBObject material, String targetPath, String globalRetrievePath, IJobEngine jobEngine, IJobRuntime jobRuntime) + throws Exception { try { IItemManager itemManager = jobEngine.getItemManager(); Media mediaCubeMedia = itemManager.getMedia(material.getLong(MorpheusStrings.MEDIAID)); - super.execute(mediaCubeMedia, targetPath, TARGETNAMEPATTERN, null, 0, jobEngine, jobRuntime); + super.execute(mediaCubeMedia, targetPath, TARGETNAMEPATTERN, null, 0, targetPath, globalRetrievePath, jobEngine, jobRuntime); saveMaterial(material, MorpheusStrings.STATUS_DONE); } catch (Exception e) { saveMaterial(material, MorpheusStrings.STATUS_ERROR); diff --git a/server/user.jobengine.osgi.server/pages/searchitems.zul b/server/user.jobengine.osgi.server/pages/searchitems.zul index 9d353115..aa5fade2 100644 --- a/server/user.jobengine.osgi.server/pages/searchitems.zul +++ b/server/user.jobengine.osgi.server/pages/searchitems.zul @@ -49,16 +49,22 @@ div.z-row-content span { text-color: black; } +.RED100 { + border-color: #FFCDD2; +} + .RED100 .z-toolbarbutton-content { background: #FFCDD2; } .RED200 .z-toolbarbutton-content { background: #EF9A9A; + border-color: #EF9A9A;; } .BROWN100 .z-toolbarbutton-content { background: #D7CCC8; + border-color: #D7CCC8; } .YELLOW200 .z-toolbarbutton-content { @@ -122,6 +128,21 @@ div.z-row-content span { background:transparent; } +.z-toolbarbutton { + border-width: 2px; +} + +.z-toolbarbutton-checked { + border: 2px solid #808080; +} + +.type-inlist { + width:80px; + border-left:1px solid #008AC8; + border-bottom:1px solid #008AC8; + padding:4px; +} +
@@ -197,7 +218,7 @@ div.z-row-content span { onClick="@command('selectMediaArchive', selectedObject=each)" />
-
+