git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube;C31571
}\r
}\r
\r
- if (limit > 0) {\r
- int correctedLimit = limit > archiveList.size() ? archiveList.size() : limit;\r
- if (correctedLimit > 0) {\r
- archiveList = archiveList.subList(0, correctedLimit - 1);\r
- logger.info(marker, "A folyamat elérte a beállított {} limitet.", limit);\r
- } else\r
- logger.info(marker, "Nincs archiválandó anyag.");\r
- } else\r
+ if (limit > 0 && archiveList.size() > limit) {\r
+ archiveList = archiveList.subList(0, limit);\r
+ logger.info(marker, "A folyamat alkalmazza a beállított {} limitet.", limit);\r
+ }\r
+\r
+ if (archiveList.size() == 0)\r
+ logger.info(marker, "Nincs archiválandó anyag.");\r
+ else\r
logger.info(marker, "Az archiváló folyamat {} új anyagot érzékelt.", archiveList == null ? 0 : archiveList.size());\r
\r
for (ArchiveItem archiveItem : archiveList) {\r
--- /dev/null
+package user.jobengine.server.steps;\r
+\r
+import java.io.File;\r
+import java.io.IOException;\r
+import java.nio.file.DirectoryStream;\r
+import java.nio.file.Files;\r
+import java.nio.file.Path;\r
+import java.nio.file.Paths;\r
+import java.util.LinkedList;\r
+import java.util.List;\r
+\r
+import org.apache.logging.log4j.LogManager;\r
+import org.apache.logging.log4j.Logger;\r
+import org.apache.logging.log4j.Marker;\r
+\r
+import user.jobengine.server.IJobEngine;\r
+import user.jobengine.server.IJobRuntime;\r
+\r
+public class HSMMigrateListBuilderStep extends JobStep {\r
+ private static final Logger logger = LogManager.getLogger();\r
+ private static final String MXFEXT = ".mxf";\r
+ private static final String MOVEXT = ".mov";\r
+ private Marker marker = jobRuntime.getMarker();\r
+\r
+ @StepEntry\r
+ public Object[] execute(String sourcePath, int limit, IJobEngine jobEngine, IJobRuntime jobRuntime) {\r
+ marker = jobRuntime.getMarker();\r
+ List<ArchiveItem> archiveList = new LinkedList<ArchiveItem>();\r
+ DirectoryStream<Path> directoryStream = null;\r
+ try {\r
+ DirectoryStream<Path> stream = Files.newDirectoryStream(Paths.get(sourcePath));\r
+ for (Path p : stream) {\r
+ processPathItem(p, archiveList);\r
+ }\r
+ } catch (Exception e) {\r
+ logger.catching(e);\r
+ logger.error(marker, "Az '{}' mappa elérése sikertelen. A rendszer hibaüzenete: {}", e.getMessage());\r
+ } finally {\r
+ if (directoryStream != null) {\r
+ try {\r
+ directoryStream.close();\r
+ } catch (IOException e) {\r
+ }\r
+ }\r
+ }\r
+ return new Object[] { archiveList };\r
+ }\r
+\r
+ private boolean processPathItem(Path mediaFilePath, final List<ArchiveItem> archiveList) {\r
+ File mediaFile = mediaFilePath.toFile();\r
+\r
+ // if (mediaFile.length() > 0)\r
+ // return false;\r
+\r
+ if (mediaFile.isDirectory() || !mediaFile.getName().toLowerCase().endsWith(MXFEXT.toLowerCase())) {\r
+ return false;\r
+ }\r
+ return true;\r
+ }\r
+}\r
public Object[] execute(ArchiveItem archiveItem, Media mediaCubeMedia, String transcoderAddress, String transcoderTemplateName,\r
String globalHiresSourcePath, String localLowresTargetPath, String webPath, boolean deleteSource, IJobEngine jobEngine, IJobRuntime jobRuntime)\r
throws Exception {\r
+\r
this.marker = jobRuntime.getMarker();\r
this.manager = jobEngine.getItemManager();\r
this.store = check(manager.getSystemStore(true), "lowres Store");\r
check(webPath, "webPath");\r
\r
File sourceMediaFile = new File(archiveItem.getMediaFile());\r
+ logger.info("Transcoding {}", archiveItem.getMediaFile());\r
String sourceFileName = sourceMediaFile.getName();\r
String details = String.format("%s (%d bytes)", sourceFileName, sourceMediaFile.length());\r
Path targetPath = null;\r
});\r
\r
api.submit(transcoderTemplateName, sourceFile);\r
- api.monitor(1000);\r
+ api.monitor(3000);\r
}\r
\r
//a sikeres transzkod utan nem mindig van ott egybol a fajl\r
break;\r
}\r
case 1: {\r
- TranscodeFFAStranStep selenioStep = new TranscodeFFAStranStep();\r
+ TranscodeFFAStranStep ffaStransStep = new TranscodeFFAStranStep();\r
String transcoderAddress = System.getProperty("jobengine.transcoder.address");\r
String transcoderTemplateName = System.getProperty("jobengine.transcoder.template");\r
- selenioStep.execute(archiveItem, mediaCubeMedia, transcoderAddress, transcoderTemplateName, globalSourcePath, transcoderTargetPath, webPath, false,\r
+ ffaStransStep.execute(archiveItem, mediaCubeMedia, transcoderAddress, transcoderTemplateName, globalSourcePath, transcoderTargetPath, webPath, false,\r
jobEngine, jobRuntime);\r
break;\r
}\r