Deployment view - tags :Fixed N+1 query issue

Bug fix: Deleted tag displayed in tag layout


Signed-off-by: asharani-murugesh <asharani.murugesh@in.bosch.com>
This commit is contained in:
asharani-murugesh
2016-03-21 13:02:23 +01:00
parent 061159f259
commit e236984d94
8 changed files with 21 additions and 29 deletions

View File

@@ -97,9 +97,9 @@ public class SMTypeFilterButtons extends AbstractFilterButtons {
}
@Override
protected boolean isClickedByDefault(final Long buttonId) {
protected boolean isClickedByDefault(final String typeName) {
return artifactUploadState.getSoftwareModuleFilters().getSoftwareModuleType().isPresent() && artifactUploadState
.getSoftwareModuleFilters().getSoftwareModuleType().get().getId().equals(buttonId);
.getSoftwareModuleFilters().getSoftwareModuleType().get().getName().equals(typeName);
}
@Override

View File

@@ -161,7 +161,6 @@ public class SoftwareModuleDetailsTable extends Table {
if (null != distributionSet) {
if (isUnassignSoftModAllowed && permissionChecker.hasUpdateDistributionPermission()) {
try {
distributionSetManagement.checkDistributionSetAlreadyUse(distributionSet);
isTargetAssigned = false;
} catch (final EntityLockedException exception) {
isTargetAssigned = true;

View File

@@ -114,7 +114,7 @@ public abstract class AbstractFilterButtons extends Table {
typeButton.addClickListener(event -> filterButtonClickBehaviour.processFilterButtonClick(event));
if (typeButton.getData().equals(SPUIDefinitions.NO_TAG_BUTTON_ID) && isNoTagSateSelected()) {
filterButtonClickBehaviour.setDefaultClickedButton(typeButton);
} else if (id != null && isClickedByDefault(id)) {
} else if (id != null && isClickedByDefault(name)) {
filterButtonClickBehaviour.setDefaultClickedButton(typeButton);
}
final DragAndDropWrapper wrapper = createDragAndDropWrapper(typeButton, name, id);
@@ -205,10 +205,11 @@ public abstract class AbstractFilterButtons extends Table {
/**
* Check if button should be displayed as clicked by default.
*
* @param id
* @return
* @param buttonCaption
* button caption
* @return true if button is clicked
*/
protected abstract boolean isClickedByDefault(final Long buttonId);
protected abstract boolean isClickedByDefault(final String buttonCaption);
/**
* Get filter button Id.

View File

@@ -79,10 +79,9 @@ public class DSTypeFilterButtons extends AbstractFilterButtons {
}
@Override
protected boolean isClickedByDefault(final Long buttonId) {
protected boolean isClickedByDefault(final String typeName) {
return manageDistUIState.getManageDistFilters().getClickedDistSetType() != null
&& manageDistUIState.getManageDistFilters().getClickedDistSetType().getId().equals(buttonId);
&& manageDistUIState.getManageDistFilters().getClickedDistSetType().getName().equals(typeName);
}
@Override

View File

@@ -82,10 +82,9 @@ public class DistSMTypeFilterButtons extends AbstractFilterButtons {
}
@Override
protected boolean isClickedByDefault(final Long buttonId) {
protected boolean isClickedByDefault(final String typeName) {
return manageDistUIState.getSoftwareModuleFilters().getSoftwareModuleType().isPresent()
&& manageDistUIState.getSoftwareModuleFilters().getSoftwareModuleType().get().getId().equals(buttonId);
&& manageDistUIState.getSoftwareModuleFilters().getSoftwareModuleType().get().getName().equals(typeName);
}
@Override

View File

@@ -9,6 +9,7 @@
package org.eclipse.hawkbit.ui.management.dstag;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.PreDestroy;
@@ -16,7 +17,6 @@ import javax.annotation.PreDestroy;
import org.eclipse.hawkbit.eventbus.event.DistributionSetTagCreatedBulkEvent;
import org.eclipse.hawkbit.eventbus.event.DistributionSetTagDeletedEvent;
import org.eclipse.hawkbit.eventbus.event.DistributionSetTagUpdateEvent;
import org.eclipse.hawkbit.repository.TagManagement;
import org.eclipse.hawkbit.repository.model.DistributionSetTag;
import org.eclipse.hawkbit.ui.common.filterlayout.AbstractFilterButtonClickBehaviour;
import org.eclipse.hawkbit.ui.common.filterlayout.AbstractFilterButtons;
@@ -58,9 +58,6 @@ public class DistributionTagButtons extends AbstractFilterButtons {
@Autowired
private DistributionTagDropEvent spDistTagDropEvent;
@Autowired
private transient TagManagement tagMgmtService;
@Autowired
private ManagementUIState managementUIState;
@@ -121,10 +118,9 @@ public class DistributionTagButtons extends AbstractFilterButtons {
}
@Override
protected boolean isClickedByDefault(final Long buttonId) {
final DistributionSetTag dsTagObject = tagMgmtService.findDistributionSetTagById(buttonId);
protected boolean isClickedByDefault(final String tagName) {
return null != managementUIState.getDistributionTableFilters().getDistSetTags()
&& managementUIState.getDistributionTableFilters().getDistSetTags().contains(dsTagObject.getName());
&& managementUIState.getDistributionTableFilters().getDistSetTags().contains(tagName);
}
@Override

View File

@@ -15,11 +15,11 @@ import java.util.stream.Collectors;
import javax.annotation.PreDestroy;
import org.eclipse.hawkbit.eventbus.event.TargetDeletedEvent;
import org.eclipse.hawkbit.eventbus.event.TargetTagCreatedBulkEvent;
import org.eclipse.hawkbit.eventbus.event.TargetTagDeletedEvent;
import org.eclipse.hawkbit.eventbus.event.TargetTagUpdateEvent;
import org.eclipse.hawkbit.repository.SpPermissionChecker;
import org.eclipse.hawkbit.repository.TagManagement;
import org.eclipse.hawkbit.repository.TargetManagement;
import org.eclipse.hawkbit.repository.model.TargetIdName;
import org.eclipse.hawkbit.repository.model.TargetTag;
@@ -70,9 +70,6 @@ public class TargetTagFilterButtons extends AbstractFilterButtons {
@Autowired
private ManagementUIState managementUIState;
@Autowired
private transient TagManagement tagMgmtService;
@Autowired
private ManagementViewAcceptCriteria managementViewAcceptCriteria;
@@ -139,10 +136,9 @@ public class TargetTagFilterButtons extends AbstractFilterButtons {
}
@Override
protected boolean isClickedByDefault(final Long buttonId) {
final TargetTag newTagClickedObj = tagMgmtService.findTargetTagById(buttonId);
return managementUIState.getTargetTableFilters().getClickedTargetTags() != null && managementUIState
.getTargetTableFilters().getClickedTargetTags().contains(newTagClickedObj.getName());
protected boolean isClickedByDefault(final String tagName) {
return managementUIState.getTargetTableFilters().getClickedTargetTags() != null
&& managementUIState.getTargetTableFilters().getClickedTargetTags().contains(tagName);
}
@Override

View File

@@ -20,6 +20,7 @@ import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import org.eclipse.hawkbit.eventbus.event.DistributionSetTagCreatedBulkEvent;
import org.eclipse.hawkbit.eventbus.event.DistributionSetTagDeletedEvent;
import org.eclipse.hawkbit.eventbus.event.EntityEvent;
import org.eclipse.hawkbit.eventbus.event.RolloutChangeEvent;
import org.eclipse.hawkbit.eventbus.event.RolloutGroupChangeEvent;
@@ -27,6 +28,7 @@ import org.eclipse.hawkbit.eventbus.event.TargetCreatedEvent;
import org.eclipse.hawkbit.eventbus.event.TargetDeletedEvent;
import org.eclipse.hawkbit.eventbus.event.TargetInfoUpdateEvent;
import org.eclipse.hawkbit.eventbus.event.TargetTagCreatedBulkEvent;
import org.eclipse.hawkbit.eventbus.event.TargetTagDeletedEvent;
import org.eclipse.hawkbit.im.authentication.TenantAwareAuthenticationDetails;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -76,7 +78,7 @@ public class DelayedEventBusPushStrategy implements EventPushStrategy {
*/
private static final Set<Class<?>> UI_EVENTS = Sets.newHashSet(TargetInfoUpdateEvent.class,
TargetCreatedEvent.class, TargetDeletedEvent.class, RolloutChangeEvent.class, RolloutGroupChangeEvent.class,
TargetTagCreatedBulkEvent.class, DistributionSetTagCreatedBulkEvent.class);
TargetTagCreatedBulkEvent.class, DistributionSetTagCreatedBulkEvent.class,TargetTagDeletedEvent.class,DistributionSetTagDeletedEvent.class);
/**
* Constructor.