From dc9bd80c700a50eb929179ccde9f371ba40e9df7 Mon Sep 17 00:00:00 2001 From: =?utf8?q?D=C3=A9nes=20Horv=C3=A1th?= Date: Fri, 6 Sep 2019 13:34:23 +0000 Subject: [PATCH] git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube;C31508 --- .../jobtemplates/common-copy.xml | 4 ++ .../jobengine/server/steps/FileCopyStep.java | 5 ++- .../zk/model/MaestroJobListModel.java | 41 ++++++++--------- .../jobengine/zk/model/TargetsListModel.java | 44 ++++++++----------- 4 files changed, 45 insertions(+), 49 deletions(-) diff --git a/server/user.jobengine.executors/jobtemplates/common-copy.xml b/server/user.jobengine.executors/jobtemplates/common-copy.xml index caa14817..210b6462 100644 --- a/server/user.jobengine.executors/jobtemplates/common-copy.xml +++ b/server/user.jobengine.executors/jobtemplates/common-copy.xml @@ -8,6 +8,7 @@ + @@ -31,6 +32,9 @@ + + + diff --git a/server/user.jobengine.executors/src/user/jobengine/server/steps/FileCopyStep.java b/server/user.jobengine.executors/src/user/jobengine/server/steps/FileCopyStep.java index eefbc31b..00d5d9b5 100644 --- a/server/user.jobengine.executors/src/user/jobengine/server/steps/FileCopyStep.java +++ b/server/user.jobengine.executors/src/user/jobengine/server/steps/FileCopyStep.java @@ -56,7 +56,7 @@ public class FileCopyStep extends JobStep { @StepEntry public Object[] execute(String sourceProtocol, String sourcePath, String sourceFileName, String targetProtocol, String targetPath, String targetFileName, - IJobEngine jobEngine, IJobRuntime jobRuntime) throws Exception { + int killDateDays, IJobEngine jobEngine, IJobRuntime jobRuntime) throws Exception { marker = jobRuntime.getMarker(); check(sourceProtocol, sourcePath, sourceFileName, targetProtocol, targetPath, targetFileName, jobEngine, jobRuntime); @@ -75,6 +75,9 @@ public class FileCopyStep extends JobStep { }); source.transferFrom(target, sourceFileName, targetFileName); + if (killDateDays > 0) { + EscortFiles.createUNCKillDate(targetPath, sourceFileName, killDateDays, marker); + } } catch (Exception e) { logger.catching(e); diff --git a/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/MaestroJobListModel.java b/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/MaestroJobListModel.java index dc743471..34e54fe7 100644 --- a/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/MaestroJobListModel.java +++ b/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/MaestroJobListModel.java @@ -17,7 +17,6 @@ import org.zkoss.zul.Window; import com.ibm.nosql.json.api.BasicDBObject; import user.commons.ListUtils; -import user.commons.remotestore.RemoteStoreProtocol; import user.jobengine.db.ItemManagerData.SignalType; import user.jobengine.server.IJobChangedListener; import user.jobengine.server.IJobEngine; @@ -37,13 +36,6 @@ public class MaestroJobListModel extends AsyncBaseModel implements IJobChangedLi private Collection selectedJobs; private String currentUser = SessionUtil.getUserPrincipal().getAccount(); - @Command - public void executeJob() { - String template = "/pages/jobselector.zul"; - Window window = (Window) Executions.createComponents(template, null, ListUtils.asMap("jobEngine", jobEngine)); - window.doModal(); - } - public ListModelList getJobList() { return jobList; } @@ -74,10 +66,12 @@ public class MaestroJobListModel extends AsyncBaseModel implements IJobChangedLi } private void initializeList() { + if (currentUser == null) + return; jobList.clear(); Map jobMap = jobEngine.getJobs(); for (int i = 0; i < jobMap.size(); i++) { - if (jobMap.get(i).getOwner() == currentUser) { + if (currentUser.equals(jobMap.get(i).getOwner())) { jobList.add(i, jobMap.get(i)); } } @@ -85,9 +79,11 @@ public class MaestroJobListModel extends AsyncBaseModel implements IJobChangedLi @Override public void jobChanged(JobChangedEvent event) { + if (currentUser == null) + return; JobChangedEvent jobEvent = event; final IJobRuntime job = jobEvent.getJob(); - if (job.getOwner() == currentUser) { + if (currentUser.equals(job.getOwner())) { if (jobEvent.getSignalType().equals(SignalType.CREATE)) { registerTask(() -> onJobCreated(job)); return; @@ -139,28 +135,27 @@ public class MaestroJobListModel extends AsyncBaseModel implements IJobChangedLi @GlobalCommand @NotifyChange({ "jobList" }) - public void submitJob(@BindingParam("params") Object params) { - // public void submitJob() { + public void submitJob(@BindingParam("sourceProtocol") String sourceProtocol, @BindingParam("sourcePath") String sourcePath, + @BindingParam("sourceFileName") String sourceFileName, @BindingParam("targetProtocol") String targetProtocol, + @BindingParam("targetPath") String targetPath, @BindingParam("killDateDays") Integer killDateDays) { + ScheduledJob scheduledJob = jobEngine.getScheduledJob(TEMPLATE); Map parameters = scheduledJob.getJobParameters(); - // Map parameters = new HashMap<>(); - // parameters.putAll(params); - parameters.put("sourceProtocol", RemoteStoreProtocol.LOCAL.toString()); - parameters.put("sourcePath", "c:/temp"); - parameters.put("sourceFileName", "index.bat"); + parameters.put("sourceProtocol", sourceProtocol); + parameters.put("sourcePath", sourcePath); + parameters.put("sourceFileName", sourceFileName); - parameters.put("targetProtocol", RemoteStoreProtocol.LOCAL.toString()); - parameters.put("targetPath", "c:/temp1"); - parameters.put("targetFileName", "index.bat"); + parameters.put("targetProtocol", targetProtocol); + parameters.put("targetPath", targetPath); + parameters.put("targetFileName", sourceFileName); + parameters.put("killDateDays", killDateDays); try { IJobRuntime job; - // jobEngine.submit(template, "CopyJob", null, currentUser); - job = jobEngine.submit(TEMPLATE, "CopyJob", parameters, currentUser); + job = jobEngine.submit(TEMPLATE, "Maestro File Copy", parameters, currentUser); jobList.add(job); } catch (JobEngineException e) { logger.info("Hiba a job indításakor", e); } } - } diff --git a/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/TargetsListModel.java b/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/TargetsListModel.java index 91486880..47901494 100644 --- a/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/TargetsListModel.java +++ b/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/TargetsListModel.java @@ -17,7 +17,6 @@ import org.zkoss.zul.ListModelList; import user.commons.RemoteFile; import user.commons.config.JSONConfig; import user.commons.remotestore.RemoteStoreProtocol; -import user.jobengine.server.IJobEngine; import user.mediacube.metadata.interfaces.IMetadata; public class TargetsListModel { @@ -25,7 +24,6 @@ public class TargetsListModel { private MaestroConfig config = null; private ListModelList targets; private boolean executeEnabled; - private IJobEngine jobEngine = null; Set sourceData; Set metaData; @@ -34,14 +32,18 @@ public class TargetsListModel { boolean ret = false; if (sourceData != null && metaData != null) { if (!sourceData.isEmpty() && !metaData.isEmpty()) { - srcMetaOk = true; + if (!sourceData.iterator().next().getIsFolder()) { + srcMetaOk = true; + } } } // Végén törölni !!! //////////////////////////////////////// if (sourceData != null) { if (!sourceData.isEmpty()) { - srcMetaOk = true; + if (!sourceData.iterator().next().getIsFolder()) { + srcMetaOk = true; + } } } // Végén törölni !!! //////////////////////////////////////// @@ -59,26 +61,21 @@ public class TargetsListModel { @Command public void createJob() { - /* - * Set selection = targets.getSelection(); - * - * Map args = new HashMap<>(); args.put("targets", - * selection); - */ - // ScheduledJob scheduledJob = - // jobEngine.getScheduledJob("common-copy.xml"); - // Map parameters = scheduledJob.getJobParameters(); String fileName = sourceData.iterator().next().getName(); + String sourcePath = config.getSourceStoreUri().getUri(); for (int i = 0; i < targets.size(); i++) { - Map params = new HashMap<>(); - params.put("sourceProtocol", RemoteStoreProtocol.LOCAL.toString()); - params.put("sourcePath", sourceData.iterator().next()); - params.put("sourceFileName", fileName); - - params.put("targetProtocol", RemoteStoreProtocol.LOCAL.toString()); - params.put("targetPath", targets.get(i).getStoreUri().getUri()); - params.put("targetFileName", fileName); - BindUtils.postGlobalCommand(null, null, "submitJob", params); + if (targets.get(i).isSelected()) { + Map params = new HashMap<>(); + params.put("sourceProtocol", RemoteStoreProtocol.LOCAL.toString()); + params.put("sourcePath", sourcePath); + params.put("sourceFileName", fileName); + + params.put("targetProtocol", RemoteStoreProtocol.LOCAL.toString()); + params.put("targetPath", targets.get(i).getStoreUri().getUri()); + params.put("killDateDays", 0); + // params.put("targetFileName", fileName); + BindUtils.postGlobalCommand(null, null, "submitJob", params); + } } } @@ -106,9 +103,6 @@ public class TargetsListModel { @Command @NotifyChange("executeEnabled") public void onCheck(@BindingParam("targetName") String targetName, @BindingParam("isChecked") Boolean isChecked) { - // public void onCheck(@BindingParam("sourcedata") Set - // sourceData, @BindingParam("metadata") Set metaData) { - // @ContextParam(ContextType.TRIGGER_EVENT) CheckEvent event, for (int i = 0; i < targets.size(); i++) { if (targets.get(i).getName() == targetName) { targets.get(i).setSelected(isChecked.booleanValue()); -- 2.54.0