diff --git a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/artifacts/smtable/SoftwareModuleTable.java b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/artifacts/smtable/SoftwareModuleTable.java index a4f8a8f70..f1e302fdc 100644 --- a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/artifacts/smtable/SoftwareModuleTable.java +++ b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/artifacts/smtable/SoftwareModuleTable.java @@ -78,7 +78,8 @@ public class SoftwareModuleTable extends AbstractTable { @Autowired private UploadViewAcceptCriteria uploadViewAcceptCriteria; - + + /** * Initialize the filter layout. */ @@ -127,12 +128,7 @@ public class SoftwareModuleTable extends AbstractTable { */ @Override protected Container createContainer() { - final Map queryConfiguration = new HashMap(); - artifactUploadState.getSoftwareModuleFilters().getSearchText() - .ifPresent(value -> queryConfiguration.put(SPUIDefinitions.FILTER_BY_TEXT, value)); - - artifactUploadState.getSoftwareModuleFilters().getSoftwareModuleType() - .ifPresent(type -> queryConfiguration.put(SPUIDefinitions.BY_SOFTWARE_MODULE_TYPE, type)); + final Map queryConfiguration = prepareQueryConfigFilters(); final BeanQueryFactory swQF = new BeanQueryFactory( BaseSwModuleBeanQuery.class); @@ -142,6 +138,19 @@ public class SoftwareModuleTable extends AbstractTable { new LazyQueryDefinition(true, SPUIDefinitions.PAGE_SIZE, "swId"), swQF); return container; } + + private Map prepareQueryConfigFilters() { + final Map queryConfig = new HashMap(); + artifactUploadState.getSoftwareModuleFilters().getSearchText() + .ifPresent(value -> queryConfig.put(SPUIDefinitions.FILTER_BY_TEXT, value)); + + artifactUploadState.getSoftwareModuleFilters().getSoftwareModuleType() + .ifPresent(type -> queryConfig.put(SPUIDefinitions.BY_SOFTWARE_MODULE_TYPE, type)); + + return queryConfig; + } + + @Override protected void addContainerProperties(final Container container) { diff --git a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/artifacts/smtable/SoftwareModuleTableHeader.java b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/artifacts/smtable/SoftwareModuleTableHeader.java index b08c4defb..b7db0096a 100644 --- a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/artifacts/smtable/SoftwareModuleTableHeader.java +++ b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/artifacts/smtable/SoftwareModuleTableHeader.java @@ -219,8 +219,10 @@ public class SoftwareModuleTableHeader extends AbstractTableHeader { */ @Override protected void resetSearchText() { - artifactUploadState.getSoftwareModuleFilters().setSearchText(null); - eventbus.publish(this, SMFilterEvent.REMOVER_FILTER_BY_TEXT); + if(artifactUploadState.getSoftwareModuleFilters().getSearchText().isPresent()){ + artifactUploadState.getSoftwareModuleFilters().setSearchText(null); + eventbus.publish(this, SMFilterEvent.REMOVER_FILTER_BY_TEXT); + } } /* diff --git a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/dstable/DistributionSetTable.java b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/dstable/DistributionSetTable.java index b8e0d286a..32223e995 100644 --- a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/dstable/DistributionSetTable.java +++ b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/dstable/DistributionSetTable.java @@ -114,7 +114,7 @@ public class DistributionSetTable extends AbstractTable { @Autowired private transient TargetManagement targetManagement; - + /** * Initialize the component. */ @@ -157,21 +157,28 @@ public class DistributionSetTable extends AbstractTable { @Override protected Container createContainer() { - final Map queryConfiguration = new HashMap<>(); - manageDistUIState.getManageDistFilters().getSearchText() - .ifPresent(value -> queryConfiguration.put(SPUIDefinitions.FILTER_BY_TEXT, value)); - - if (null != manageDistUIState.getManageDistFilters().getClickedDistSetType()) { - queryConfiguration.put(SPUIDefinitions.FILTER_BY_DISTRIBUTION_SET_TYPE, - manageDistUIState.getManageDistFilters().getClickedDistSetType()); - } - + final Map queryConfiguration = prepareQueryConfigFilters(); final BeanQueryFactory distributionQF = new BeanQueryFactory<>(ManageDistBeanQuery.class); + distributionQF.setQueryConfiguration(queryConfiguration); return new LazyQueryContainer( new LazyQueryDefinition(true, SPUIDefinitions.PAGE_SIZE, SPUILabelDefinitions.VAR_DIST_ID_NAME), distributionQF); } + + private Map prepareQueryConfigFilters() { + final Map queryConfig = new HashMap(); + manageDistUIState.getManageDistFilters().getSearchText() + .ifPresent(value -> queryConfig.put(SPUIDefinitions.FILTER_BY_TEXT, value)); + + if (null != manageDistUIState.getManageDistFilters().getClickedDistSetType()) { + queryConfig.put(SPUIDefinitions.FILTER_BY_DISTRIBUTION_SET_TYPE, + manageDistUIState.getManageDistFilters().getClickedDistSetType()); + } + + return queryConfig; + } + /* * (non-Javadoc) diff --git a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/dstable/DistributionSetTableHeader.java b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/dstable/DistributionSetTableHeader.java index d64f07ca0..a39f32f6e 100644 --- a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/dstable/DistributionSetTableHeader.java +++ b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/dstable/DistributionSetTableHeader.java @@ -170,9 +170,10 @@ public class DistributionSetTableHeader extends AbstractTableHeader { @Override protected void resetSearchText() { - manageDistUIstate.getManageDistFilters().setSearchText(null); - eventbus.publish(this, DistributionTableFilterEvent.REMOVE_FILTER_BY_TEXT); - + if(manageDistUIstate.getManageDistFilters().getSearchText().isPresent()){ + manageDistUIstate.getManageDistFilters().setSearchText(null); + eventbus.publish(this, DistributionTableFilterEvent.REMOVE_FILTER_BY_TEXT); + } } @Override diff --git a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/smtable/SwModuleTable.java b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/smtable/SwModuleTable.java index 17ee9b8af..90d6a74df 100644 --- a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/smtable/SwModuleTable.java +++ b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/smtable/SwModuleTable.java @@ -94,8 +94,8 @@ public class SwModuleTable extends AbstractTable { @Autowired private ArtifactDetailsLayout artifactDetailsLayout; - - /** + + /** * Initialize the filter layout. */ @PostConstruct @@ -177,15 +177,7 @@ public class SwModuleTable extends AbstractTable { */ @Override protected Container createContainer() { - final Map queryConfiguration = new HashMap(); - manageDistUIState.getSoftwareModuleFilters().getSearchText() - .ifPresent(value -> queryConfiguration.put(SPUIDefinitions.FILTER_BY_TEXT, value)); - - manageDistUIState.getSoftwareModuleFilters().getSoftwareModuleType() - .ifPresent(type -> queryConfiguration.put(SPUIDefinitions.BY_SOFTWARE_MODULE_TYPE, type)); - - manageDistUIState.getLastSelectedDistribution().ifPresent( - distIdName -> queryConfiguration.put(SPUIDefinitions.ORDER_BY_DISTRIBUTION, distIdName.getId())); + final Map queryConfiguration = prepareQueryConfigFilters(); final BeanQueryFactory swQF = new BeanQueryFactory( SwModuleBeanQuery.class); @@ -195,6 +187,20 @@ public class SwModuleTable extends AbstractTable { new LazyQueryDefinition(true, SPUIDefinitions.PAGE_SIZE, "swId"), swQF); return container; } + + private Map prepareQueryConfigFilters() { + final Map queryConfig = new HashMap(); + manageDistUIState.getSoftwareModuleFilters().getSearchText() + .ifPresent(value -> queryConfig.put(SPUIDefinitions.FILTER_BY_TEXT, value)); + + manageDistUIState.getSoftwareModuleFilters().getSoftwareModuleType() + .ifPresent(type -> queryConfig.put(SPUIDefinitions.BY_SOFTWARE_MODULE_TYPE, type)); + + manageDistUIState.getLastSelectedDistribution().ifPresent( + distIdName -> queryConfig.put(SPUIDefinitions.ORDER_BY_DISTRIBUTION, distIdName.getId())); + + return queryConfig; + } /* * (non-Javadoc) diff --git a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/smtable/SwModuleTableHeader.java b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/smtable/SwModuleTableHeader.java index 1eae1297b..d8d018e27 100644 --- a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/smtable/SwModuleTableHeader.java +++ b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/distributions/smtable/SwModuleTableHeader.java @@ -203,8 +203,10 @@ public class SwModuleTableHeader extends AbstractTableHeader { */ @Override protected void resetSearchText() { - manageDistUIState.getSoftwareModuleFilters().setSearchText(null); - eventbus.publish(this, SMFilterEvent.REMOVER_FILTER_BY_TEXT); + if(manageDistUIState.getSoftwareModuleFilters().getSearchText().isPresent()){ + manageDistUIState.getSoftwareModuleFilters().setSearchText(null); + eventbus.publish(this, SMFilterEvent.REMOVER_FILTER_BY_TEXT); + } } /* diff --git a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/dstable/DistributionTable.java b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/dstable/DistributionTable.java index 225407b84..53e723c7d 100644 --- a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/dstable/DistributionTable.java +++ b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/dstable/DistributionTable.java @@ -112,7 +112,8 @@ public class DistributionTable extends AbstractTable { private Boolean isDistPinned = false; private Button distributinPinnedBtn; - + + /** * Initialize the distribution table. */ @@ -141,7 +142,7 @@ public class DistributionTable extends AbstractTable { || event == DistributionTableFilterEvent.REMOVE_FILTER_BY_TEXT || event == DistributionTableFilterEvent.FILTER_BY_TAG) { UI.getCurrent().access(() -> refreshFilter()); - } + } } @EventBusListenerMethod(scope = EventScope.SESSION) @@ -219,18 +220,8 @@ public class DistributionTable extends AbstractTable { */ @Override protected Container createContainer() { - final Map queryConfiguration = new HashMap(); - managementUIState.getDistributionTableFilters().getSearchText() - .ifPresent(value -> queryConfiguration.put(SPUIDefinitions.FILTER_BY_TEXT, value)); - managementUIState.getDistributionTableFilters().getPinnedTargetId() - .ifPresent(value -> queryConfiguration.put(SPUIDefinitions.ORDER_BY_PINNED_TARGET, value)); - final List list = new ArrayList(); - queryConfiguration.put(SPUIDefinitions.FILTER_BY_NO_TAG, - managementUIState.getDistributionTableFilters().isNoTagSelected()); - if (!managementUIState.getDistributionTableFilters().getDistSetTags().isEmpty()) { - list.addAll(managementUIState.getDistributionTableFilters().getDistSetTags()); - } - queryConfiguration.put(SPUIDefinitions.FILTER_BY_TAG, list); + final Map queryConfiguration = prepareQueryConfigFilters(); + final BeanQueryFactory distributionQF = new BeanQueryFactory( DistributionBeanQuery.class); distributionQF.setQueryConfiguration(queryConfiguration); @@ -239,6 +230,22 @@ public class DistributionTable extends AbstractTable { distributionQF); return distributionContainer; } + + private Map prepareQueryConfigFilters() { + final Map queryConfig = new HashMap(); + managementUIState.getDistributionTableFilters().getSearchText() + .ifPresent(value -> queryConfig.put(SPUIDefinitions.FILTER_BY_TEXT, value)); + managementUIState.getDistributionTableFilters().getPinnedTargetId() + .ifPresent(value -> queryConfig.put(SPUIDefinitions.ORDER_BY_PINNED_TARGET, value)); + final List list = new ArrayList(); + queryConfig.put(SPUIDefinitions.FILTER_BY_NO_TAG, + managementUIState.getDistributionTableFilters().isNoTagSelected()); + if (!managementUIState.getDistributionTableFilters().getDistSetTags().isEmpty()) { + list.addAll(managementUIState.getDistributionTableFilters().getDistSetTags()); + } + queryConfig.put(SPUIDefinitions.FILTER_BY_TAG, list); + return queryConfig; + } /* * (non-Javadoc) diff --git a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/dstable/DistributionTableHeader.java b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/dstable/DistributionTableHeader.java index 1f28293d2..32a3e914d 100644 --- a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/dstable/DistributionTableHeader.java +++ b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/dstable/DistributionTableHeader.java @@ -210,8 +210,10 @@ public class DistributionTableHeader extends AbstractTableHeader { */ @Override protected void resetSearchText() { - managementUIState.getDistributionTableFilters().setSearchText(null); - eventbus.publish(this, DistributionTableFilterEvent.REMOVE_FILTER_BY_TEXT); + if( managementUIState.getDistributionTableFilters().getSearchText().isPresent()){ + managementUIState.getDistributionTableFilters().setSearchText(null); + eventbus.publish(this, DistributionTableFilterEvent.REMOVE_FILTER_BY_TEXT); + } } /* diff --git a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/targettable/TargetTable.java b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/targettable/TargetTable.java index 9ed202343..960553a6a 100644 --- a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/targettable/TargetTable.java +++ b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/targettable/TargetTable.java @@ -15,6 +15,7 @@ import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; @@ -140,6 +141,8 @@ public class TargetTable extends AbstractTable implements Handler { private Boolean isTargetPinned = Boolean.FALSE; private ShortcutAction actionSelectAll; private ShortcutAction actionUnSelectAll; + + @Override @PostConstruct diff --git a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/targettable/TargetTableHeader.java b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/targettable/TargetTableHeader.java index a1b094f99..159c169d7 100644 --- a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/targettable/TargetTableHeader.java +++ b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/management/targettable/TargetTableHeader.java @@ -258,8 +258,10 @@ public class TargetTableHeader extends AbstractTableHeader { @Override protected void resetSearchText() { - managementUIState.getTargetTableFilters().setSearchText(null); - eventBus.publish(this, TargetFilterEvent.REMOVE_FILTER_BY_TEXT); + if(managementUIState.getTargetTableFilters().getSearchText().isPresent()){ + managementUIState.getTargetTableFilters().setSearchText(null); + eventBus.publish(this, TargetFilterEvent.REMOVE_FILTER_BY_TEXT); + } } private String getSearchText() {