git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube...
authorMárk Mérész <USER\mark.meresz>
Fri, 20 Jul 2018 14:49:33 +0000 (14:49 +0000)
committerMárk Mérész <USER\mark.meresz>
Fri, 20 Jul 2018 14:49:33 +0000 (14:49 +0000)
server/user.jobengine.executors/src/user/jobengine/server/steps/OutputPathAndNameSelectorStep.java
server/user.jobengine.executors/src/user/jobengine/server/steps/TSMExtendedRetrieveStep.java
server/user.jobengine.executors/src/user/jobengine/server/steps/TSMRestoreStep.java
server/user.jobengine.osgi.server/pages/searchitems.zul
server/user.jobengine.osgi.server/src/user/jobengine/zk/model/SearchModel.java

index 4a8cb20d1cee2e60559c3e861c5031ba1705bd88..1338315b5b1252e374da259f73c9ceffec2bd082 100644 (file)
@@ -78,7 +78,7 @@ public class OutputPathAndNameSelectorStep extends JobStep {
                case 1:\r
                        return localTargetInit(localRetrievePath, onlineOutputFolder, houseId, jobRuntime);\r
                case 2:\r
-                       return new Object[] { null, houseId + TARGETNAMEPATTERN, true };\r
+                       return new Object[] { null, houseId, true };\r
                }\r
                return result;\r
        }\r
index b8242447cc3ad505c26ba34e3b2bedb5276c274a..01a9b72d0fe5216c0352837bb744673b8b4ad033 100644 (file)
@@ -30,10 +30,14 @@ public class TSMExtendedRetrieveStep extends TSMRestoreStep {
                                FTPClient targetFTP = ((FtpDirectoryLister) targetUri.getLister()).connect();\r
                                Calendar killDate = CalendarUtils.createCalendar(new Date());\r
                                killDate.add(Calendar.DAY_OF_YEAR, killDateDays);\r
+                               if (targetFileName.toLowerCase().contains(".mxf"))\r
+                                       targetFileName = targetFileName.substring(0, targetFileName.lastIndexOf('.'));\r
                                byte[] killDateFile = EscortFiles.createNEXIOKillDateFile(targetFileName, killDate.getTime(), null, nexioAgency);\r
-                               outStream = targetFTP.storeFileStream(targetFileName + ".xml");\r
+                               String xml = targetFileName + ".xml";\r
+                               outStream = targetFTP.storeFileStream(xml);\r
                                if (outStream == null) {\r
-                                       throw new NullPointerException("Can not open: " + targetFileName + ".xml" + " Reply:" + targetFTP.getReplyString());\r
+                                       throw new NullPointerException(\r
+                                                       "Can not open: " + targetFileName.substring(0, targetFileName.lastIndexOf('.')) + ".xml" + " Reply:" + targetFTP.getReplyString());\r
                                }\r
                                outStream.write(killDateFile);\r
                                outStream.flush();\r
@@ -47,6 +51,13 @@ public class TSMExtendedRetrieveStep extends TSMRestoreStep {
                }\r
        }\r
 \r
+       @Override\r
+       protected void beforeRestore(StoreUri targetURI, String targetName) throws Exception {\r
+               if (useNexioTarget)\r
+                       if (targetURI.fileExists(targetName + ".mxf"))\r
+                               throw new Exception("The newly created file name is existed.");\r
+       }\r
+\r
        @Override\r
        protected void checkTargetPath(String targetPath) {\r
                if (!useNexioTarget)\r
@@ -93,6 +104,7 @@ public class TSMExtendedRetrieveStep extends TSMRestoreStep {
                if (nexioAgency == null) {\r
                        throw new NullPointerException("System is not configured properly, 'nexioAgency' input parameter missing.");\r
                }\r
+\r
                return super.execute(mediaCubeMedia, targetPath, targetNamePattern, successRecipient, killDateDays, localRetrievePath, globalRetrievePath, jobEngine,\r
                                jobRuntime);\r
        }\r
index 9b81e0e783056aaaa0106d947ffe2f2d4a1a6a8b..2c6dcfd49c32d327912459eda175cdc7edb231e0 100644 (file)
@@ -39,6 +39,9 @@ public class TSMRestoreStep extends JobStep {
                        EscortFiles.createUNCKillDate(targetPath, targetFileName, killDateDays, marker);\r
        }\r
 \r
+       protected void beforeRestore(StoreUri targetURI, String targetFileName) throws Exception {\r
+       }\r
+\r
        protected void checkTargetPath(String targetPath) {\r
                if (StringUtils.isBlank(targetPath)) {\r
                        logger.error(marker, "A folyamat 'targetPath' bemeneti paramétere üres.");\r
@@ -54,10 +57,10 @@ public class TSMRestoreStep extends JobStep {
        public Object[] execute(Media mediaCubeMedia, String targetPath, String targetNamePattern, String successRecipient, int killDateDays,\r
                        String localRetrievePath, String globalRetrievePath, IJobEngine jobEngine, IJobRuntime jobRuntime) throws Exception {\r
                marker = jobRuntime.getMarker();\r
+               String targetFileName = String.format(targetNamePattern, sourceFileName);\r
                setAndCheck(mediaCubeMedia, targetPath, targetNamePattern, localRetrievePath, globalRetrievePath, jobEngine);\r
-               String targetFileName = null;\r
                try {\r
-                       // TODO check file existance?\r
+                       beforeRestore(targetUri, targetNamePattern);\r
                        final IJobRuntime runtime = jobRuntime;\r
                        sourceUri.addProgressListener(new IProgressEventListener() {\r
                                @Override\r
@@ -71,7 +74,6 @@ public class TSMRestoreStep extends JobStep {
                                        evt.setCancel(!canContinue());\r
                                }\r
                        });\r
-                       targetFileName = String.format(targetNamePattern, sourceFileName);\r
                        RemoteFile result = sourceUri.transferFrom(targetUri, sourceFileName, targetFileName);\r
 \r
                        String globalTargetPath = Paths.get(targetPath, targetFileName).getParent().toString().replace(Paths.get(localRetrievePath).toString(),\r
index d0cb667050133815b2fa4efc36464d50c86d8b26..94b17065b78e3b81d04843e5d8d7d973b17b90ed 100644 (file)
@@ -74,8 +74,8 @@
                        <west border="none" size="60%" splittable="true" minsize="500">\r
                                <div height="100%" width="100%">\r
                                        <groupbox vflex="min" closable="false">\r
-                                               <vlayout>\r
-                                                       <hbox pack="left" align="top">\r
+                                               <vlayout >\r
+                                                       <hbox pack="left" align="top" id="searchFiltersMenu"> \r
                                                                <toolbar class="toolbar" style="width: 40px;">\r
                                                                        <toolbarbutton label="Mind" style="font-size:9px;padding:0px;margin:0px 10px 0px 0px;background:none;" mode="toggle"\r
                                                                                checked="@bind(vm.allChecked)" />\r
                                                </vlayout>\r
                                                <hbox width="100%" pack="center" align="left">\r
                                                        <combobox id="search" hflex="1" focus="true" model="@load(vm.searchHistory)" autodrop="true" buttonVisible="false"\r
-                                                               tooltiptext="Gépelje be a keresendő kifejezést és nyomja meg az Enter-t." onOK="@command('doSearch')">\r
+                                                               tooltiptext="Gépelje be a keresendő kifejezést és nyomja meg az Enter-t." onOK="@command('doSearch')" >\r
                                                                <template name="model">\r
                                                                        <comboitem label="${each}" />\r
                                                                </template>\r
index 155790d0d9b2b969bb974bedd3618bb120a87c67..43dd8d6c7fc9726984aeddb86ace53cb0e804015 100644 (file)
@@ -35,6 +35,7 @@ import org.zkoss.zul.Combobox;
 import org.zkoss.zul.Detail;\r
 import org.zkoss.zul.Div;\r
 import org.zkoss.zul.Grid;\r
+import org.zkoss.zul.Hbox;\r
 import org.zkoss.zul.Hlayout;\r
 import org.zkoss.zul.ListModelList;\r
 import org.zkoss.zul.Menuitem;\r
@@ -50,6 +51,7 @@ import user.commons.StoreUri;
 import user.commons.remotestore.RemoteStoreProtocol;\r
 import user.jobengine.db.ArchivedMedia;\r
 import user.jobengine.db.IItemManager;\r
+import user.jobengine.db.ItemManager;\r
 import user.jobengine.db.MediaFile;\r
 import user.jobengine.db.Store;\r
 import user.jobengine.zk.util.SessionUtil;\r
@@ -94,6 +96,9 @@ public class SearchModel extends AsyncBaseModel {
        @Wire\r
        Combobox search;\r
 \r
+       @Wire\r
+       Hbox searchFiltersMenu;\r
+\r
        @Wire\r
        Menupopup searchSettings;\r
        @Wire\r
@@ -110,6 +115,7 @@ public class SearchModel extends AsyncBaseModel {
        private Map<String, String> columnOrder;\r
 \r
        public SearchModel() {\r
+               this.itemManager = ItemManager.getInstance();\r
                typeFilters = new LinkedHashMap<>();\r
                addTypeFilter(TypeFilter.as(NEWS_MATERIAL, "RED200", "ic_language_black_18dp.png"));\r
                addTypeFilter(TypeFilter.as(RAW_NEWS_MATERIAL, "RED100", "ic_perm_camera_mic_black_18dp.png"));\r
@@ -181,6 +187,8 @@ public class SearchModel extends AsyncBaseModel {
                if (SessionUtil.getUserPageSize() != 0)\r
                        itemsGrid.setPageSize(SessionUtil.getUserPageSize());\r
                setSettingsPageSize(itemsGrid.getPageSize());\r
+               if (!allChecked)\r
+                       Clients.showNotification(String.format("Figyelem! A keresési paraméterek megváltoztak! "), "warning", searchFiltersMenu, "end_center", 3000);\r
        }\r
 \r
        private void clearAllFilters() {\r