From f015c36a949c7e95a0c8dd773f2973a9f2f3a7c3 Mon Sep 17 00:00:00 2001 From: =?utf8?q?V=C3=A1s=C3=A1ry=20D=C3=A1niel?= Date: Wed, 14 Aug 2019 13:51:04 +0000 Subject: [PATCH] git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube;C31485 --- .../pages/planair.zul | 8 +- .../zk/model/DirectoryListModel.java | 199 +++++++++--------- .../user/jobengine/zk/model/MaestroModel.java | 9 +- ...erListModel.java => PlanAirListModel.java} | 33 ++- .../jobengine/zk/model/TargetsListModel.java | 34 ++- 5 files changed, 174 insertions(+), 109 deletions(-) rename server/user.jobengine.osgi.server/src/user/jobengine/zk/model/{PlannerListModel.java => PlanAirListModel.java} (82%) diff --git a/server/user.jobengine.osgi.server/pages/planair.zul b/server/user.jobengine.osgi.server/pages/planair.zul index 77922a47..fc9b1d27 100644 --- a/server/user.jobengine.osgi.server/pages/planair.zul +++ b/server/user.jobengine.osgi.server/pages/planair.zul @@ -1,7 +1,7 @@ + viewModel="@id('vm') @init('user.jobengine.zk.model.PlanAirListModel')"> @@ -25,7 +25,7 @@ + emptyMessage="Nincs találat! Kattintson a frissítés gombra." onSelect="@command('selectedItemChanged')"> @@ -78,7 +78,7 @@ + emptyMessage="Nincs találat! Kattintson a frissítés gombra." onSelect="@command('selectedItemChanged')"> @@ -112,7 +112,7 @@ + emptyMessage="Nincs találat! Kattintson a frissítés gombra." onSelect="@command('selectedItemChanged')"> diff --git a/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/DirectoryListModel.java b/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/DirectoryListModel.java index e1d69fc6..e35f0a30 100644 --- a/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/DirectoryListModel.java +++ b/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/DirectoryListModel.java @@ -1,11 +1,14 @@ package user.jobengine.zk.model; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Set; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.zkoss.bind.BindUtils; import org.zkoss.bind.annotation.BindingParam; import org.zkoss.bind.annotation.Command; import org.zkoss.bind.annotation.Init; @@ -27,34 +30,65 @@ public class DirectoryListModel { private FileSizeConverter fileSizeConverter = new FileSizeConverter(); private String searchText; - public void setSourceList() throws Exception { - //files = new ListModelList<>(filesCopy); - //files = new ListModelList<>(uri.getRemoteFiles()); - files.clear(); - files.addAll(uri.getRemoteFiles()); - filesCopy = new ArrayList<>(files); - } - public void changeDirectory(RemoteFile selectedFolder) throws Exception { setSearchText(null); - if (uri.getCurrentPath() == null){ + if (uri.getCurrentPath() == null) { uri.setCurrentPath(selectedFolder.getName()); - }else{ + } else { uri.setCurrentPath(uri.getCurrentPath() + "/" + selectedFolder.getName()); } setSourceList(); } - + @Command - public void selectedItemChanged (){ - Set selection = files.getSelection(); - logger.info("Selected: {}", selection.size()); + @NotifyChange("files") + public void clearFilter() throws Exception { + //files = new ListModelList<>(filesCopy); + setSearchText(null); + files.clear(); + files.addAll(filesCopy); } - + @Command - public boolean notSelected (){ - return files.getSelection().size() == 0; + @NotifyChange({ "files", "searchText" }) + public void doSearch() throws Exception { + if (searchText == null || searchText == "") { + files.clear(); + files.addAll(filesCopy); + } else { + files.clear(); + for (int i = 0; i < filesCopy.size(); i++) { + if (filesCopy.get(i).getName().contains(searchText)) { + files.add(filesCopy.get(i)); + } + } + } + selectedItemChanged(); + } + + public List getFiles() { + return files; + } + + public List getFilesCopy() { + return filesCopy; + } + + public FileSizeConverter getFileSizeConverter() { + return fileSizeConverter; + } + + public String getSearchText() { + return searchText; + } + + public Store getStore() { + return store; + } + + public StoreUri getUri() { + return uri; } @Init @@ -64,7 +98,7 @@ public class DirectoryListModel { config = JSONConfig.read(key, MaestroConfig.class); uri = config.getSourceStoreUri(); - files = new ListModelList<>(); + files = new ListModelList<>(); setSourceList(); } catch (Exception e) { logger.error("A forrás file -ok nem elérhetőek: {}", e.getMessage()); @@ -72,11 +106,30 @@ public class DirectoryListModel { } @Command - @NotifyChange({"files","searchText"}) + public boolean notSelected() { + return files.getSelection().size() == 0; + } + + @Command + @NotifyChange({ "files", "searchText" }) + public void onBack() throws Exception { + setSearchText(null); + if (uri.getCurrentPath() != null) { + if (uri.getCurrentPath().contains("/")) { + uri.setCurrentPath(uri.getCurrentPath().substring(0, uri.getCurrentPath().lastIndexOf("/"))); + } else { + uri.setCurrentPath(null); + } + setSourceList(); + } + } + + @Command + @NotifyChange({ "files", "searchText" }) public void onDoubleClick(@BindingParam("selectedItem") RemoteFile selectedItem) { - if (selectedItem.getIsFolder()){ + if (selectedItem.getIsFolder()) { try { - + changeDirectory(selectedItem); } catch (Exception e) { logger.error("A forrás file -ok nem elérhetőek: {}", e); @@ -85,104 +138,60 @@ public class DirectoryListModel { } @Command - @NotifyChange({"files","searchText"}) - public void doSearch() throws Exception { - if (searchText == null || searchText == ""){ - files.clear(); - files.addAll(filesCopy); - }else{ - files.clear(); - for (int i=0;i currList = new ArrayList<>; - List currList = uri.getRemoteFiles(); - for (int i=0;i currList = new ArrayList<>; + List currList = uri.getRemoteFiles(); + for (int i = 0; i < currList.size(); i++) { + if (currList.get(i).getName().contains(searchText)) { files.add(currList.get(i)); } } } - } - - @Command - @NotifyChange("files") - public void clearFilter() throws Exception { - //files = new ListModelList<>(filesCopy); - setSearchText(null); - files.clear(); - files.addAll(filesCopy); - } - - public StoreUri getUri() { - return uri; - } - - public void setUri(StoreUri uri) { - this.uri = uri; - } - public List getFiles() { - return files; + selectedItemChanged(); } - public Store getStore() { - return store; - } + @Command + public void selectedItemChanged() { + Set selection = files.getSelection(); + logger.info("Selected: {}", selection.size()); - public void setStore(Store store) { - this.store = store; + Map args = new HashMap<>(); + args.put("sourcedata", selection); + BindUtils.postGlobalCommand(null, null, "updateExecuteState", args); } - @Command - @NotifyChange({"files","searchText"}) - public void onBack() throws Exception{ - setSearchText(null); - if (uri.getCurrentPath() != null){ - if (uri.getCurrentPath().contains("/")){ - uri.setCurrentPath(uri.getCurrentPath().substring(0, uri.getCurrentPath().lastIndexOf("/"))); - }else{ - uri.setCurrentPath(null); - } - setSourceList(); - } + public void setFilesCopy(List filesCopy) { + this.filesCopy = filesCopy; } - public FileSizeConverter getFileSizeConverter() { - return fileSizeConverter; - } - public void setFileSizeConverter(FileSizeConverter fileSizeConverter) { this.fileSizeConverter = fileSizeConverter; } - - public List getFilesCopy() { - return filesCopy; + public void setSearchText(String searchText) { + this.searchText = searchText; } - public void setFilesCopy(List filesCopy) { - this.filesCopy = filesCopy; + public void setSourceList() throws Exception { + //files = new ListModelList<>(filesCopy); + //files = new ListModelList<>(uri.getRemoteFiles()); + files.clear(); + files.addAll(uri.getRemoteFiles()); + filesCopy = new ArrayList<>(files); } - public String getSearchText() { - return searchText; + public void setStore(Store store) { + this.store = store; } - public void setSearchText(String searchText) { - this.searchText = searchText; + public void setUri(StoreUri uri) { + this.uri = uri; } } diff --git a/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/MaestroModel.java b/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/MaestroModel.java index 7affae7b..fbcac1ab 100644 --- a/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/MaestroModel.java +++ b/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/MaestroModel.java @@ -12,6 +12,10 @@ public class MaestroModel { private StoreUri sourceUri; private MaestroConfig sourceConfig = null; + public StoreUri getSourceUri() { + return sourceUri; + } + @Init public void init() { @@ -24,12 +28,9 @@ public class MaestroModel { logger.error(message, e.getMessage()); } } - - public StoreUri getSourceUri() { - return sourceUri; - } public void setSourceUri(StoreUri sourceUri) { this.sourceUri = sourceUri; } + } diff --git a/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/PlannerListModel.java b/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/PlanAirListModel.java similarity index 82% rename from server/user.jobengine.osgi.server/src/user/jobengine/zk/model/PlannerListModel.java rename to server/user.jobengine.osgi.server/src/user/jobengine/zk/model/PlanAirListModel.java index 358a3967..09616d63 100644 --- a/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/PlannerListModel.java +++ b/server/user.jobengine.osgi.server/src/user/jobengine/zk/model/PlanAirListModel.java @@ -1,7 +1,10 @@ package user.jobengine.zk.model; import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.Set; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -21,7 +24,7 @@ import user.mediacube.metadata.interfaces.MetadataProviderType; import user.mediacube.metadata.interfaces.MetadataType; import user.mediacube.metadata.interfaces.PlanAirMetadataListOptions; -public class PlannerListModel { +public class PlanAirListModel { private static final Logger logger = LogManager.getLogger(); private MaestroConfig config = null; private Validator filterCheckedValidator; @@ -118,6 +121,34 @@ public class PlannerListModel { } catch (Exception e) { logger.error(e); } + + selectedItemChanged(); + } + + @Command + public void selectedItemChanged() { + Set selection = null; + + switch (selectedTabIndex) { + case 0: + selection = materialList.getSelection(); + break; + case 1: + selection = promoList.getSelection(); + break; + case 2: + selection = adList.getSelection(); + break; + } + + if (selection == null) + return; + + logger.info("Selected: {}", selection.size()); + + Map args = new HashMap<>(); + args.put("metadata", selection); + BindUtils.postGlobalCommand(null, null, "updateExecuteState", args); } public void setProblematic(boolean problematic) { 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 7ca70651..edc47d39 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 @@ -1,18 +1,29 @@ package user.jobengine.zk.model; +import java.util.Set; + import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.zkoss.bind.annotation.BindingParam; import org.zkoss.bind.annotation.Command; +import org.zkoss.bind.annotation.GlobalCommand; import org.zkoss.bind.annotation.Init; +import org.zkoss.bind.annotation.NotifyChange; import org.zkoss.zul.ListModelList; +import user.commons.RemoteFile; import user.commons.config.JSONConfig; +import user.mediacube.metadata.interfaces.IMetadata; public class TargetsListModel { private static final Logger logger = LogManager.getLogger(); private MaestroConfig config = null; private ListModelList targets; + private boolean executeEnabled; + + public ListModelList getTargets() { + return targets; + } @Init public void init() { @@ -25,13 +36,26 @@ public class TargetsListModel { } } - public ListModelList getTargets() { - return targets; + public boolean isExecuteEnabled() { + return executeEnabled; } - + @Command - public void onCheck(@BindingParam("data") MaestroTarget data){ + public void onCheck(@BindingParam("data") MaestroTarget data) { //@ContextParam(ContextType.TRIGGER_EVENT) CheckEvent event, - + + } + + public void setExecuteEnabled(boolean executeEnabled) { + this.executeEnabled = executeEnabled; } + + @NotifyChange("executeEnabled") + @GlobalCommand + public void updateExecuteState(@BindingParam("sourcedata") Set sourceData, @BindingParam("metadata") Set metaData) { + logger.info("{}", sourceData); + logger.info("{}", metaData); + + } + } -- 2.54.0