code review improvements
Signed-off-by: Melanie Retter <melanie.retter@bosch-si.com>
This commit is contained in:
@@ -10,7 +10,6 @@ package org.eclipse.hawkbit.ui.artifacts.smtable;
|
|||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Iterator;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import org.eclipse.hawkbit.repository.EntityFactory;
|
import org.eclipse.hawkbit.repository.EntityFactory;
|
||||||
@@ -21,6 +20,7 @@ import org.eclipse.hawkbit.ui.common.CommonDialogWindow;
|
|||||||
import org.eclipse.hawkbit.ui.common.SoftwareModuleTypeBeanQuery;
|
import org.eclipse.hawkbit.ui.common.SoftwareModuleTypeBeanQuery;
|
||||||
import org.eclipse.hawkbit.ui.common.table.BaseEntityEventType;
|
import org.eclipse.hawkbit.ui.common.table.BaseEntityEventType;
|
||||||
import org.eclipse.hawkbit.ui.components.SPUIComponentProvider;
|
import org.eclipse.hawkbit.ui.components.SPUIComponentProvider;
|
||||||
|
import org.eclipse.hawkbit.ui.utils.CommonDialogWindowHelper;
|
||||||
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
||||||
import org.eclipse.hawkbit.ui.utils.I18N;
|
import org.eclipse.hawkbit.ui.utils.I18N;
|
||||||
import org.eclipse.hawkbit.ui.utils.SPUIComponentIdProvider;
|
import org.eclipse.hawkbit.ui.utils.SPUIComponentIdProvider;
|
||||||
@@ -34,9 +34,7 @@ import org.vaadin.spring.events.EventBus;
|
|||||||
|
|
||||||
import com.vaadin.spring.annotation.SpringComponent;
|
import com.vaadin.spring.annotation.SpringComponent;
|
||||||
import com.vaadin.spring.annotation.ViewScope;
|
import com.vaadin.spring.annotation.ViewScope;
|
||||||
import com.vaadin.ui.AbstractField;
|
|
||||||
import com.vaadin.ui.ComboBox;
|
import com.vaadin.ui.ComboBox;
|
||||||
import com.vaadin.ui.Component;
|
|
||||||
import com.vaadin.ui.CustomComponent;
|
import com.vaadin.ui.CustomComponent;
|
||||||
import com.vaadin.ui.FormLayout;
|
import com.vaadin.ui.FormLayout;
|
||||||
import com.vaadin.ui.Label;
|
import com.vaadin.ui.Label;
|
||||||
@@ -229,23 +227,11 @@ public class SoftwareModuleAddUpdateWindow extends CustomComponent implements Se
|
|||||||
/* add main layout to the window */
|
/* add main layout to the window */
|
||||||
window = SPUIComponentProvider.getWindow(i18n.get("upload.caption.add.new.swmodule"), null,
|
window = SPUIComponentProvider.getWindow(i18n.get("upload.caption.add.new.swmodule"), null,
|
||||||
SPUIDefinitions.CREATE_UPDATE_WINDOW, this, event -> saveOrUpdate(), event -> closeThisWindow(), null,
|
SPUIDefinitions.CREATE_UPDATE_WINDOW, this, event -> saveOrUpdate(), event -> closeThisWindow(), null,
|
||||||
getMandatoryFields(formLayout), geEditedFields(), i18n);
|
CommonDialogWindowHelper.getMandatoryFields(formLayout), geEditedFields(), i18n);
|
||||||
window.getButtonsLayout().removeStyleName("actionButtonsMargin");
|
window.getButtonsLayout().removeStyleName("actionButtonsMargin");
|
||||||
typeComboBox.focus();
|
typeComboBox.focus();
|
||||||
}
|
}
|
||||||
|
|
||||||
private Map<String, Boolean> getMandatoryFields(final FormLayout formLayout) {
|
|
||||||
final Map<String, Boolean> requiredFields = new HashMap<>();
|
|
||||||
final Iterator<Component> iterate = formLayout.iterator();
|
|
||||||
while (iterate.hasNext()) {
|
|
||||||
final Component c = iterate.next();
|
|
||||||
if (c instanceof AbstractField && ((AbstractField) c).isRequired()) {
|
|
||||||
requiredFields.put(c.getId(), Boolean.FALSE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return requiredFields;
|
|
||||||
}
|
|
||||||
|
|
||||||
private Map<String, Boolean> geEditedFields() {
|
private Map<String, Boolean> geEditedFields() {
|
||||||
final Map<String, Boolean> editedFields = new HashMap<>();
|
final Map<String, Boolean> editedFields = new HashMap<>();
|
||||||
editedFields.put(typeComboBox.getId(), Boolean.FALSE);
|
editedFields.put(typeComboBox.getId(), Boolean.FALSE);
|
||||||
|
|||||||
@@ -9,10 +9,7 @@
|
|||||||
package org.eclipse.hawkbit.ui.artifacts.smtype;
|
package org.eclipse.hawkbit.ui.artifacts.smtype;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.Iterator;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.eclipse.hawkbit.repository.EntityFactory;
|
import org.eclipse.hawkbit.repository.EntityFactory;
|
||||||
@@ -25,6 +22,7 @@ import org.eclipse.hawkbit.ui.colorpicker.ColorPickerHelper;
|
|||||||
import org.eclipse.hawkbit.ui.common.SoftwareModuleTypeBeanQuery;
|
import org.eclipse.hawkbit.ui.common.SoftwareModuleTypeBeanQuery;
|
||||||
import org.eclipse.hawkbit.ui.components.SPUIComponentProvider;
|
import org.eclipse.hawkbit.ui.components.SPUIComponentProvider;
|
||||||
import org.eclipse.hawkbit.ui.layouts.CreateUpdateTypeLayout;
|
import org.eclipse.hawkbit.ui.layouts.CreateUpdateTypeLayout;
|
||||||
|
import org.eclipse.hawkbit.ui.utils.CommonDialogWindowHelper;
|
||||||
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
||||||
import org.eclipse.hawkbit.ui.utils.SPUIDefinitions;
|
import org.eclipse.hawkbit.ui.utils.SPUIDefinitions;
|
||||||
import org.eclipse.hawkbit.ui.utils.SPUILabelDefinitions;
|
import org.eclipse.hawkbit.ui.utils.SPUILabelDefinitions;
|
||||||
@@ -37,10 +35,8 @@ import com.vaadin.data.Property.ValueChangeEvent;
|
|||||||
import com.vaadin.shared.ui.colorpicker.Color;
|
import com.vaadin.shared.ui.colorpicker.Color;
|
||||||
import com.vaadin.spring.annotation.SpringComponent;
|
import com.vaadin.spring.annotation.SpringComponent;
|
||||||
import com.vaadin.spring.annotation.ViewScope;
|
import com.vaadin.spring.annotation.ViewScope;
|
||||||
import com.vaadin.ui.AbstractField;
|
|
||||||
import com.vaadin.ui.Alignment;
|
import com.vaadin.ui.Alignment;
|
||||||
import com.vaadin.ui.Button.ClickEvent;
|
import com.vaadin.ui.Button.ClickEvent;
|
||||||
import com.vaadin.ui.Component;
|
|
||||||
import com.vaadin.ui.Label;
|
import com.vaadin.ui.Label;
|
||||||
import com.vaadin.ui.OptionGroup;
|
import com.vaadin.ui.OptionGroup;
|
||||||
import com.vaadin.ui.components.colorpicker.ColorChangeListener;
|
import com.vaadin.ui.components.colorpicker.ColorChangeListener;
|
||||||
@@ -125,20 +121,8 @@ public class CreateUpdateSoftwareTypeLayout extends CreateUpdateTypeLayout
|
|||||||
public void createWindow() {
|
public void createWindow() {
|
||||||
reset();
|
reset();
|
||||||
window = SPUIComponentProvider.getWindow(i18n.get("caption.add.type"), null,
|
window = SPUIComponentProvider.getWindow(i18n.get("caption.add.type"), null,
|
||||||
SPUIDefinitions.CREATE_UPDATE_WINDOW, this, this::save, this::discard, null, getMandatoryFields(),
|
SPUIDefinitions.CREATE_UPDATE_WINDOW, this, this::save, this::discard, null,
|
||||||
getEditedFields(), i18n);
|
CommonDialogWindowHelper.getMandatoryFields(getFormLayout()), getEditedFields(), i18n);
|
||||||
}
|
|
||||||
|
|
||||||
private Map<String, Boolean> getMandatoryFields() {
|
|
||||||
final Map<String, Boolean> requiredFields = new HashMap<>();
|
|
||||||
final Iterator<Component> iterate = getFormLayout().iterator();
|
|
||||||
while (iterate.hasNext()) {
|
|
||||||
final Component c = iterate.next();
|
|
||||||
if (c instanceof AbstractField && ((AbstractField) c).isRequired()) {
|
|
||||||
requiredFields.put(c.getId(), Boolean.FALSE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return requiredFields;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -127,7 +127,7 @@ public class CommonDialogWindow extends Window implements Serializable {
|
|||||||
public void checkMandatoryEditedTextField(final TextChangeEvent event, final String originalValue) {
|
public void checkMandatoryEditedTextField(final TextChangeEvent event, final String originalValue) {
|
||||||
final Component component = event.getComponent();
|
final Component component = event.getComponent();
|
||||||
if (!(component instanceof AbstractComponent)) {
|
if (!(component instanceof AbstractComponent)) {
|
||||||
throw new IllegalStateException("Only AbstractComponent are allowed");
|
throw new IllegalStateException("Only AbstractComponents are allowed");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (requiredFields.containsKey(component.getId())) {
|
if (requiredFields.containsKey(component.getId())) {
|
||||||
@@ -155,10 +155,10 @@ public class CommonDialogWindow extends Window implements Serializable {
|
|||||||
if (requiredFields.containsKey(component.getId())) {
|
if (requiredFields.containsKey(component.getId())) {
|
||||||
setRequiredFieldChangeValue(component, isChangedValueNotNull);
|
setRequiredFieldChangeValue(component, isChangedValueNotNull);
|
||||||
}
|
}
|
||||||
if (event.getProperty().getValue() != null) {
|
if (event.getProperty().getValue() == null) {
|
||||||
checkChanges(component.getId(), event.getProperty().getValue().toString(), originalValue);
|
|
||||||
} else {
|
|
||||||
checkChanges(component.getId(), null, originalValue);
|
checkChanges(component.getId(), null, originalValue);
|
||||||
|
} else {
|
||||||
|
checkChanges(component.getId(), event.getProperty().getValue().toString(), originalValue);
|
||||||
}
|
}
|
||||||
checkSaveButtonEnabled();
|
checkSaveButtonEnabled();
|
||||||
}
|
}
|
||||||
@@ -392,12 +392,4 @@ public class CommonDialogWindow extends Window implements Serializable {
|
|||||||
return buttonsLayout;
|
return buttonsLayout;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Map<String, Boolean> getRequiredFields() {
|
|
||||||
return requiredFields;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRequiredFields(final Map<String, Boolean> requiredFields) {
|
|
||||||
this.requiredFields = requiredFields;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ import org.eclipse.hawkbit.ui.decorators.SPUIButtonStyleSmallNoBorder;
|
|||||||
import org.eclipse.hawkbit.ui.distributions.event.DistributionSetTypeEvent;
|
import org.eclipse.hawkbit.ui.distributions.event.DistributionSetTypeEvent;
|
||||||
import org.eclipse.hawkbit.ui.distributions.event.DistributionSetTypeEvent.DistributionSetTypeEnum;
|
import org.eclipse.hawkbit.ui.distributions.event.DistributionSetTypeEvent.DistributionSetTypeEnum;
|
||||||
import org.eclipse.hawkbit.ui.layouts.CreateUpdateTypeLayout;
|
import org.eclipse.hawkbit.ui.layouts.CreateUpdateTypeLayout;
|
||||||
|
import org.eclipse.hawkbit.ui.utils.CommonDialogWindowHelper;
|
||||||
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
||||||
import org.eclipse.hawkbit.ui.utils.SPUIDefinitions;
|
import org.eclipse.hawkbit.ui.utils.SPUIDefinitions;
|
||||||
import org.eclipse.hawkbit.ui.utils.SPUILabelDefinitions;
|
import org.eclipse.hawkbit.ui.utils.SPUILabelDefinitions;
|
||||||
@@ -43,7 +44,6 @@ import com.vaadin.data.util.IndexedContainer;
|
|||||||
import com.vaadin.server.FontAwesome;
|
import com.vaadin.server.FontAwesome;
|
||||||
import com.vaadin.spring.annotation.SpringComponent;
|
import com.vaadin.spring.annotation.SpringComponent;
|
||||||
import com.vaadin.spring.annotation.ViewScope;
|
import com.vaadin.spring.annotation.ViewScope;
|
||||||
import com.vaadin.ui.AbstractField;
|
|
||||||
import com.vaadin.ui.AbstractSelect.ItemDescriptionGenerator;
|
import com.vaadin.ui.AbstractSelect.ItemDescriptionGenerator;
|
||||||
import com.vaadin.ui.Alignment;
|
import com.vaadin.ui.Alignment;
|
||||||
import com.vaadin.ui.Button;
|
import com.vaadin.ui.Button;
|
||||||
@@ -91,8 +91,6 @@ public class CreateUpdateDistSetTypeLayout extends CreateUpdateTypeLayout
|
|||||||
|
|
||||||
private IndexedContainer originalSelectedTableContainer;
|
private IndexedContainer originalSelectedTableContainer;
|
||||||
|
|
||||||
private String originalTypeKey;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void createRequiredComponents() {
|
protected void createRequiredComponents() {
|
||||||
|
|
||||||
@@ -109,7 +107,7 @@ public class CreateUpdateDistSetTypeLayout extends CreateUpdateTypeLayout
|
|||||||
ValoTheme.TEXTFIELD_TINY + " " + SPUIDefinitions.DIST_SET_TYPE_KEY, true, "", i18n.get("textfield.key"),
|
ValoTheme.TEXTFIELD_TINY + " " + SPUIDefinitions.DIST_SET_TYPE_KEY, true, "", i18n.get("textfield.key"),
|
||||||
true, SPUILabelDefinitions.TEXT_FIELD_MAX_LENGTH);
|
true, SPUILabelDefinitions.TEXT_FIELD_MAX_LENGTH);
|
||||||
typeKey.setId(SPUIDefinitions.NEW_DISTRIBUTION_TYPE_KEY);
|
typeKey.setId(SPUIDefinitions.NEW_DISTRIBUTION_TYPE_KEY);
|
||||||
typeKey.addTextChangeListener(event -> window.checkMandatoryEditedTextField(event, originalTypeKey));
|
typeKey.addTextChangeListener(event -> window.checkMandatoryEditedTextField(event, getOriginalTypeKey()));
|
||||||
typeKey.addValueChangeListener(event -> window.setRequiredFieldWhenUpdate(event, typeKey));
|
typeKey.addValueChangeListener(event -> window.setRequiredFieldWhenUpdate(event, typeKey));
|
||||||
|
|
||||||
tagDesc = SPUIComponentProvider.getTextArea(i18n.get("textfield.description"), "",
|
tagDesc = SPUIComponentProvider.getTextArea(i18n.get("textfield.description"), "",
|
||||||
@@ -268,32 +266,35 @@ public class CreateUpdateDistSetTypeLayout extends CreateUpdateTypeLayout
|
|||||||
private void addSMType() {
|
private void addSMType() {
|
||||||
|
|
||||||
final Set<Long> selectedIds = (Set<Long>) sourceTable.getValue();
|
final Set<Long> selectedIds = (Set<Long>) sourceTable.getValue();
|
||||||
if (selectedIds != null && !selectedIds.isEmpty()) {
|
if (selectedIds == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
for (final Long id : selectedIds) {
|
for (final Long id : selectedIds) {
|
||||||
addTargetTableData(id);
|
addTargetTableData(id);
|
||||||
}
|
}
|
||||||
window.updateRequiredFields(selectedTable.getId(), hasContentChanged());
|
window.updateRequiredFields(selectedTable.getId(), hasContentChanged());
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private void removeSMType() {
|
private void removeSMType() {
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
final Set<Long> selectedIds = (Set<Long>) selectedTable.getValue();
|
final Set<Long> selectedIds = (Set<Long>) selectedTable.getValue();
|
||||||
if (selectedIds != null && !selectedIds.isEmpty()) {
|
if (selectedIds == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
for (final Long id : selectedIds) {
|
for (final Long id : selectedIds) {
|
||||||
addSourceTableData(id);
|
addSourceTableData(id);
|
||||||
selectedTable.removeItem(id);
|
selectedTable.removeItem(id);
|
||||||
window.updateRequiredFields(selectedTable.getId(), hasContentChanged());
|
window.updateRequiredFields(selectedTable.getId(), hasContentChanged());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private Boolean hasContentChanged() {
|
private Boolean hasContentChanged() {
|
||||||
|
|
||||||
if (originalSelectedTableContainer == null) {
|
if (originalSelectedTableContainer == null) {
|
||||||
originalSelectedTableContainer = new IndexedContainer();
|
originalSelectedTableContainer = new IndexedContainer();
|
||||||
}
|
}
|
||||||
|
// is new softwareModule added?
|
||||||
for (final Iterator itemIterator = selectedTableContainer.getItemIds().iterator(); itemIterator.hasNext();) {
|
for (final Iterator itemIterator = selectedTableContainer.getItemIds().iterator(); itemIterator.hasNext();) {
|
||||||
final long itemId = (Long) itemIterator.next();
|
final long itemId = (Long) itemIterator.next();
|
||||||
if (!originalSelectedTableContainer.containsId(itemId)) {
|
if (!originalSelectedTableContainer.containsId(itemId)) {
|
||||||
@@ -302,6 +303,7 @@ public class CreateUpdateDistSetTypeLayout extends CreateUpdateTypeLayout
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// is softwareModule removed and at least one softwareModule is selected
|
||||||
for (final Iterator itemIterator = originalSelectedTableContainer.getItemIds().iterator(); itemIterator
|
for (final Iterator itemIterator = originalSelectedTableContainer.getItemIds().iterator(); itemIterator
|
||||||
.hasNext();) {
|
.hasNext();) {
|
||||||
final long itemId = (Long) itemIterator.next();
|
final long itemId = (Long) itemIterator.next();
|
||||||
@@ -311,9 +313,6 @@ public class CreateUpdateDistSetTypeLayout extends CreateUpdateTypeLayout
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (selectedTableContainer.size() > 0) {
|
|
||||||
window.updateRequiredFields(selectedTable.getId(), Boolean.TRUE);
|
|
||||||
}
|
|
||||||
return Boolean.FALSE;
|
return Boolean.FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -621,9 +620,10 @@ public class CreateUpdateDistSetTypeLayout extends CreateUpdateTypeLayout
|
|||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
private void addTargetTableforUpdate(final SoftwareModuleType swModuleType, final boolean mandatory) {
|
private void addTargetTableforUpdate(final SoftwareModuleType swModuleType, final boolean mandatory) {
|
||||||
|
|
||||||
Item saveTblitem;
|
if (selectedTableContainer == null) {
|
||||||
if (selectedTableContainer != null) {
|
return;
|
||||||
saveTblitem = selectedTableContainer.addItem(swModuleType.getId());
|
}
|
||||||
|
final Item saveTblitem = selectedTableContainer.addItem(swModuleType.getId());
|
||||||
sourceTable.removeItem(swModuleType.getId());
|
sourceTable.removeItem(swModuleType.getId());
|
||||||
saveTblitem.getItemProperty(DIST_TYPE_NAME).setValue(swModuleType.getName());
|
saveTblitem.getItemProperty(DIST_TYPE_NAME).setValue(swModuleType.getName());
|
||||||
saveTblitem.getItemProperty(DIST_TYPE_MANDATORY).setValue(new CheckBox("", mandatory));
|
saveTblitem.getItemProperty(DIST_TYPE_MANDATORY).setValue(new CheckBox("", mandatory));
|
||||||
@@ -635,7 +635,6 @@ public class CreateUpdateDistSetTypeLayout extends CreateUpdateTypeLayout
|
|||||||
originalItem.getItemProperty(DIST_TYPE_NAME).setValue(swModuleType.getName());
|
originalItem.getItemProperty(DIST_TYPE_NAME).setValue(swModuleType.getName());
|
||||||
originalItem.getItemProperty(DIST_TYPE_MANDATORY).setValue(new CheckBox("", mandatory));
|
originalItem.getItemProperty(DIST_TYPE_MANDATORY).setValue(new CheckBox("", mandatory));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void save(final ClickEvent event) {
|
protected void save(final ClickEvent event) {
|
||||||
@@ -660,15 +659,8 @@ public class CreateUpdateDistSetTypeLayout extends CreateUpdateTypeLayout
|
|||||||
getEditedFields(), i18n);
|
getEditedFields(), i18n);
|
||||||
}
|
}
|
||||||
|
|
||||||
private Map<String, Boolean> getMandatoryFields() {
|
protected Map<String, Boolean> getMandatoryFields() {
|
||||||
final Map<String, Boolean> requiredFields = new HashMap<>();
|
final Map<String, Boolean> requiredFields = CommonDialogWindowHelper.getMandatoryFields(getFormLayout());
|
||||||
final Iterator<Component> iterate = getFormLayout().iterator();
|
|
||||||
while (iterate.hasNext()) {
|
|
||||||
final Component c = iterate.next();
|
|
||||||
if (c instanceof AbstractField && ((AbstractField) c).isRequired()) {
|
|
||||||
requiredFields.put(c.getId(), Boolean.FALSE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// Selected SoftwareModulesType
|
// Selected SoftwareModulesType
|
||||||
requiredFields.put(selectedTable.getId(), Boolean.FALSE);
|
requiredFields.put(selectedTable.getId(), Boolean.FALSE);
|
||||||
return requiredFields;
|
return requiredFields;
|
||||||
@@ -718,14 +710,14 @@ public class CreateUpdateDistSetTypeLayout extends CreateUpdateTypeLayout
|
|||||||
optiongroup.setId(SPUIDefinitions.CREATE_OPTION_GROUP_DISTRIBUTION_SET_TYPE_ID);
|
optiongroup.setId(SPUIDefinitions.CREATE_OPTION_GROUP_DISTRIBUTION_SET_TYPE_ID);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
// @Override
|
||||||
public String getOriginalTypeKey() {
|
// public String getOriginalTypeKey() {
|
||||||
return originalTypeKey;
|
// return originalTypeKey;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@Override
|
// @Override
|
||||||
public void setOriginalTypeKey(final String originalTypeKey) {
|
// public void setOriginalTypeKey(final String originalTypeKey) {
|
||||||
this.originalTypeKey = originalTypeKey;
|
// this.originalTypeKey = originalTypeKey;
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,7 +9,6 @@
|
|||||||
package org.eclipse.hawkbit.ui.layouts;
|
package org.eclipse.hawkbit.ui.layouts;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Iterator;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import javax.annotation.PreDestroy;
|
import javax.annotation.PreDestroy;
|
||||||
@@ -24,6 +23,7 @@ import org.eclipse.hawkbit.ui.colorpicker.ColorPickerHelper;
|
|||||||
import org.eclipse.hawkbit.ui.colorpicker.ColorPickerLayout;
|
import org.eclipse.hawkbit.ui.colorpicker.ColorPickerLayout;
|
||||||
import org.eclipse.hawkbit.ui.common.CommonDialogWindow;
|
import org.eclipse.hawkbit.ui.common.CommonDialogWindow;
|
||||||
import org.eclipse.hawkbit.ui.components.SPUIComponentProvider;
|
import org.eclipse.hawkbit.ui.components.SPUIComponentProvider;
|
||||||
|
import org.eclipse.hawkbit.ui.utils.CommonDialogWindowHelper;
|
||||||
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
||||||
import org.eclipse.hawkbit.ui.utils.I18N;
|
import org.eclipse.hawkbit.ui.utils.I18N;
|
||||||
import org.eclipse.hawkbit.ui.utils.SPUIComponentIdProvider;
|
import org.eclipse.hawkbit.ui.utils.SPUIComponentIdProvider;
|
||||||
@@ -38,11 +38,9 @@ import com.vaadin.data.Property.ValueChangeEvent;
|
|||||||
import com.vaadin.data.Property.ValueChangeListener;
|
import com.vaadin.data.Property.ValueChangeListener;
|
||||||
import com.vaadin.server.Page;
|
import com.vaadin.server.Page;
|
||||||
import com.vaadin.shared.ui.colorpicker.Color;
|
import com.vaadin.shared.ui.colorpicker.Color;
|
||||||
import com.vaadin.ui.AbstractField;
|
|
||||||
import com.vaadin.ui.Alignment;
|
import com.vaadin.ui.Alignment;
|
||||||
import com.vaadin.ui.Button;
|
import com.vaadin.ui.Button;
|
||||||
import com.vaadin.ui.ComboBox;
|
import com.vaadin.ui.ComboBox;
|
||||||
import com.vaadin.ui.Component;
|
|
||||||
import com.vaadin.ui.CustomComponent;
|
import com.vaadin.ui.CustomComponent;
|
||||||
import com.vaadin.ui.FormLayout;
|
import com.vaadin.ui.FormLayout;
|
||||||
import com.vaadin.ui.GridLayout;
|
import com.vaadin.ui.GridLayout;
|
||||||
@@ -115,21 +113,9 @@ public abstract class AbstractCreateUpdateTagLayout extends CustomComponent
|
|||||||
|
|
||||||
protected void createWindow() {
|
protected void createWindow() {
|
||||||
reset();
|
reset();
|
||||||
setWindow(
|
setWindow(SPUIComponentProvider.getWindow(i18n.get("caption.add.tag"), null,
|
||||||
SPUIComponentProvider.getWindow(i18n.get("caption.add.tag"), null, SPUIDefinitions.CREATE_UPDATE_WINDOW,
|
SPUIDefinitions.CREATE_UPDATE_WINDOW, this, this::save, this::discard, null,
|
||||||
this, this::save, this::discard, null, getMandatoryFields(), getEditedFields(), i18n));
|
CommonDialogWindowHelper.getMandatoryFields(formLayout), getEditedFields(), i18n));
|
||||||
}
|
|
||||||
|
|
||||||
private Map<String, Boolean> getMandatoryFields() {
|
|
||||||
final Map<String, Boolean> requiredFields = new HashMap<>();
|
|
||||||
final Iterator<Component> iterate = formLayout.iterator();
|
|
||||||
while (iterate.hasNext()) {
|
|
||||||
final Component c = iterate.next();
|
|
||||||
if (c instanceof AbstractField && ((AbstractField) c).isRequired()) {
|
|
||||||
requiredFields.put(c.getId(), null);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return requiredFields;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected Map<String, Boolean> getEditedFields() {
|
protected Map<String, Boolean> getEditedFields() {
|
||||||
@@ -344,7 +330,9 @@ public abstract class AbstractCreateUpdateTagLayout extends CustomComponent
|
|||||||
comboLayout.removeComponent(comboLabel);
|
comboLayout.removeComponent(comboLabel);
|
||||||
comboLayout.removeComponent(tagNameComboBox);
|
comboLayout.removeComponent(tagNameComboBox);
|
||||||
}
|
}
|
||||||
|
if (window != null) {
|
||||||
window.reset();
|
window.reset();
|
||||||
|
}
|
||||||
// close the color picker layout
|
// close the color picker layout
|
||||||
tagPreviewBtnClicked = false;
|
tagPreviewBtnClicked = false;
|
||||||
// reset the selected color - Set default color
|
// reset the selected color - Set default color
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ public class CreateUpdateTypeLayout extends AbstractCreateUpdateTagLayout {
|
|||||||
protected String createTypeStr;
|
protected String createTypeStr;
|
||||||
protected String updateTypeStr;
|
protected String updateTypeStr;
|
||||||
protected TextField typeKey;
|
protected TextField typeKey;
|
||||||
protected String originalTypeKey;
|
private String originalTypeKey;
|
||||||
|
|
||||||
public static final String TYPE_NAME_DYNAMIC_STYLE = "new-tag-name";
|
public static final String TYPE_NAME_DYNAMIC_STYLE = "new-tag-name";
|
||||||
private static final String TYPE_DESC_DYNAMIC_STYLE = "new-tag-desc";
|
private static final String TYPE_DESC_DYNAMIC_STYLE = "new-tag-desc";
|
||||||
|
|||||||
@@ -9,7 +9,6 @@
|
|||||||
package org.eclipse.hawkbit.ui.management.dstable;
|
package org.eclipse.hawkbit.ui.management.dstable;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Iterator;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import javax.annotation.PostConstruct;
|
import javax.annotation.PostConstruct;
|
||||||
@@ -27,6 +26,7 @@ import org.eclipse.hawkbit.ui.common.table.BaseEntityEventType;
|
|||||||
import org.eclipse.hawkbit.ui.components.SPUIComponentProvider;
|
import org.eclipse.hawkbit.ui.components.SPUIComponentProvider;
|
||||||
import org.eclipse.hawkbit.ui.management.event.DistributionTableEvent;
|
import org.eclipse.hawkbit.ui.management.event.DistributionTableEvent;
|
||||||
import org.eclipse.hawkbit.ui.management.event.DragEvent;
|
import org.eclipse.hawkbit.ui.management.event.DragEvent;
|
||||||
|
import org.eclipse.hawkbit.ui.utils.CommonDialogWindowHelper;
|
||||||
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
||||||
import org.eclipse.hawkbit.ui.utils.I18N;
|
import org.eclipse.hawkbit.ui.utils.I18N;
|
||||||
import org.eclipse.hawkbit.ui.utils.SPUIComponentIdProvider;
|
import org.eclipse.hawkbit.ui.utils.SPUIComponentIdProvider;
|
||||||
@@ -44,10 +44,8 @@ import org.vaadin.spring.events.EventBus;
|
|||||||
|
|
||||||
import com.vaadin.spring.annotation.SpringComponent;
|
import com.vaadin.spring.annotation.SpringComponent;
|
||||||
import com.vaadin.spring.annotation.ViewScope;
|
import com.vaadin.spring.annotation.ViewScope;
|
||||||
import com.vaadin.ui.AbstractField;
|
|
||||||
import com.vaadin.ui.CheckBox;
|
import com.vaadin.ui.CheckBox;
|
||||||
import com.vaadin.ui.ComboBox;
|
import com.vaadin.ui.ComboBox;
|
||||||
import com.vaadin.ui.Component;
|
|
||||||
import com.vaadin.ui.CustomComponent;
|
import com.vaadin.ui.CustomComponent;
|
||||||
import com.vaadin.ui.FormLayout;
|
import com.vaadin.ui.FormLayout;
|
||||||
import com.vaadin.ui.TextArea;
|
import com.vaadin.ui.TextArea;
|
||||||
@@ -417,25 +415,13 @@ public class DistributionAddUpdateWindowLayout extends CustomComponent {
|
|||||||
eventBus.publish(this, DragEvent.HIDE_DROP_HINT);
|
eventBus.publish(this, DragEvent.HIDE_DROP_HINT);
|
||||||
window = SPUIComponentProvider.getWindow(i18n.get("caption.add.new.dist"), null,
|
window = SPUIComponentProvider.getWindow(i18n.get("caption.add.new.dist"), null,
|
||||||
SPUIDefinitions.CREATE_UPDATE_WINDOW, this, event -> saveDistribution(), event -> discardDistribution(),
|
SPUIDefinitions.CREATE_UPDATE_WINDOW, this, event -> saveDistribution(), event -> discardDistribution(),
|
||||||
null, getMandatoryFields(), getEditedFields(), i18n);
|
null, CommonDialogWindowHelper.getMandatoryFields(formLayout), getEditedFields(), i18n);
|
||||||
window.getButtonsLayout().removeStyleName("actionButtonsMargin");
|
window.getButtonsLayout().removeStyleName("actionButtonsMargin");
|
||||||
populateRequiredComponents();
|
populateRequiredComponents();
|
||||||
resetComponents();
|
resetComponents();
|
||||||
return window;
|
return window;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Map<String, Boolean> getMandatoryFields() {
|
|
||||||
final Map<String, Boolean> requiredFields = new HashMap<>();
|
|
||||||
final Iterator<Component> iterate = formLayout.iterator();
|
|
||||||
while (iterate.hasNext()) {
|
|
||||||
final Component c = iterate.next();
|
|
||||||
if (c instanceof AbstractField && ((AbstractField) c).isRequired()) {
|
|
||||||
requiredFields.put(c.getId(), Boolean.FALSE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return requiredFields;
|
|
||||||
}
|
|
||||||
|
|
||||||
private Map<String, Boolean> getEditedFields() {
|
private Map<String, Boolean> getEditedFields() {
|
||||||
final Map<String, Boolean> editedFields = new HashMap<>();
|
final Map<String, Boolean> editedFields = new HashMap<>();
|
||||||
editedFields.put(distsetTypeNameComboBox.getId(), Boolean.FALSE);
|
editedFields.put(distsetTypeNameComboBox.getId(), Boolean.FALSE);
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ package org.eclipse.hawkbit.ui.management.targettable;
|
|||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.Iterator;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
@@ -23,6 +22,7 @@ import org.eclipse.hawkbit.ui.common.table.BaseEntityEventType;
|
|||||||
import org.eclipse.hawkbit.ui.components.SPUIComponentProvider;
|
import org.eclipse.hawkbit.ui.components.SPUIComponentProvider;
|
||||||
import org.eclipse.hawkbit.ui.management.event.DragEvent;
|
import org.eclipse.hawkbit.ui.management.event.DragEvent;
|
||||||
import org.eclipse.hawkbit.ui.management.event.TargetTableEvent;
|
import org.eclipse.hawkbit.ui.management.event.TargetTableEvent;
|
||||||
|
import org.eclipse.hawkbit.ui.utils.CommonDialogWindowHelper;
|
||||||
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
|
||||||
import org.eclipse.hawkbit.ui.utils.I18N;
|
import org.eclipse.hawkbit.ui.utils.I18N;
|
||||||
import org.eclipse.hawkbit.ui.utils.SPUIComponentIdProvider;
|
import org.eclipse.hawkbit.ui.utils.SPUIComponentIdProvider;
|
||||||
@@ -36,8 +36,6 @@ import org.vaadin.spring.events.EventBus;
|
|||||||
|
|
||||||
import com.vaadin.spring.annotation.SpringComponent;
|
import com.vaadin.spring.annotation.SpringComponent;
|
||||||
import com.vaadin.spring.annotation.VaadinSessionScope;
|
import com.vaadin.spring.annotation.VaadinSessionScope;
|
||||||
import com.vaadin.ui.AbstractField;
|
|
||||||
import com.vaadin.ui.Component;
|
|
||||||
import com.vaadin.ui.CustomComponent;
|
import com.vaadin.ui.CustomComponent;
|
||||||
import com.vaadin.ui.FormLayout;
|
import com.vaadin.ui.FormLayout;
|
||||||
import com.vaadin.ui.TextArea;
|
import com.vaadin.ui.TextArea;
|
||||||
@@ -194,22 +192,11 @@ public class TargetAddUpdateWindowLayout extends CustomComponent {
|
|||||||
eventBus.publish(this, DragEvent.HIDE_DROP_HINT);
|
eventBus.publish(this, DragEvent.HIDE_DROP_HINT);
|
||||||
window = SPUIComponentProvider.getWindow(i18n.get("caption.add.new.target"), null,
|
window = SPUIComponentProvider.getWindow(i18n.get("caption.add.new.target"), null,
|
||||||
SPUIDefinitions.CREATE_UPDATE_WINDOW, this, event -> saveTargetListner(),
|
SPUIDefinitions.CREATE_UPDATE_WINDOW, this, event -> saveTargetListner(),
|
||||||
event -> discardTargetListner(), null, getMandatoryFields(), getEditedFields(), i18n);
|
event -> discardTargetListner(), null, CommonDialogWindowHelper.getMandatoryFields(formLayout),
|
||||||
|
getEditedFields(), i18n);
|
||||||
return window;
|
return window;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Map<String, Boolean> getMandatoryFields() {
|
|
||||||
final Map<String, Boolean> requiredFields = new HashMap<>();
|
|
||||||
final Iterator<Component> iterate = formLayout.iterator();
|
|
||||||
while (iterate.hasNext()) {
|
|
||||||
final Component c = iterate.next();
|
|
||||||
if (c instanceof AbstractField && ((AbstractField) c).isRequired()) {
|
|
||||||
requiredFields.put(c.getId(), Boolean.FALSE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return requiredFields;
|
|
||||||
}
|
|
||||||
|
|
||||||
private Map<String, Boolean> getEditedFields() {
|
private Map<String, Boolean> getEditedFields() {
|
||||||
final Map<String, Boolean> editedFields = new HashMap<>();
|
final Map<String, Boolean> editedFields = new HashMap<>();
|
||||||
editedFields.put(controllerIDTextField.getId(), Boolean.FALSE);
|
editedFields.put(controllerIDTextField.getId(), Boolean.FALSE);
|
||||||
|
|||||||
@@ -0,0 +1,32 @@
|
|||||||
|
package org.eclipse.hawkbit.ui.utils;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import com.vaadin.ui.AbstractField;
|
||||||
|
import com.vaadin.ui.Component;
|
||||||
|
import com.vaadin.ui.FormLayout;
|
||||||
|
|
||||||
|
public class CommonDialogWindowHelper {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Run through a FormLayout and collect all required Component's IDs in a
|
||||||
|
* Map
|
||||||
|
*
|
||||||
|
* @param formLayout
|
||||||
|
* Form to be analysed
|
||||||
|
* @return Map with all required component's IDs
|
||||||
|
*/
|
||||||
|
public static Map<String, Boolean> getMandatoryFields(final FormLayout formLayout) {
|
||||||
|
final Map<String, Boolean> requiredFields = new HashMap<>();
|
||||||
|
final Iterator<Component> iterate = formLayout.iterator();
|
||||||
|
while (iterate.hasNext()) {
|
||||||
|
final Component c = iterate.next();
|
||||||
|
if (c instanceof AbstractField && ((AbstractField) c).isRequired()) {
|
||||||
|
requiredFields.put(c.getId(), Boolean.FALSE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return requiredFields;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user