Fix some small clean code issues

Signed-off-by: SirWayne <dennis.melzer@bosch-si.com>
This commit is contained in:
SirWayne
2016-06-08 10:54:29 +02:00
parent c6f595edf9
commit 1392798bf7
4 changed files with 116 additions and 156 deletions

View File

@@ -208,35 +208,17 @@ public class SoftwareModuleAddUpdateWindow extends CustomComponent implements Se
/* add main layout to the window */
window = SPUIComponentProvider.getWindow(i18n.get("upload.caption.add.new.swmodule"), null,
SPUIDefinitions.CREATE_UPDATE_WINDOW, this, event -> save(), event -> closeThisWindow(), null);
SPUIDefinitions.CREATE_UPDATE_WINDOW, this, event -> saveOrUpdate(), event -> closeThisWindow(), null);
window.getButtonsLayout().removeStyleName("actionButtonsMargin");
nameTextField.focus();
}
/**
* add a TextChangeListener to the description TextField
*/
private void addDescriptionTextChangeListener() {
descTextArea.addTextChangeListener(event -> {
if (event.getText().equals(oldDescriptionValue) && vendorTextField.getValue().equals(oldVendorValue)) {
window.setSaveButtonEnabled(hasDescriptionOrVendorChanged(event));
} else {
window.setSaveButtonEnabled(hasDescriptionOrVendorChanged(event));
}
});
descTextArea.addTextChangeListener(event -> window.setSaveButtonEnabled(hasDescriptionChanged(event)));
}
/**
* add a TextChangeListener to the vendor TextField
*/
private void addVendorTextChangeListener() {
vendorTextField.addTextChangeListener(event -> {
if (event.getText().equals(oldVendorValue) && descTextArea.getValue().equals(oldDescriptionValue)) {
window.setSaveButtonEnabled(hasDescriptionOrVendorChanged(event));
} else {
window.setSaveButtonEnabled(hasDescriptionOrVendorChanged(event));
}
});
vendorTextField.addTextChangeListener(event -> window.setSaveButtonEnabled(hasVendorChanged(event)));
}
/**
@@ -248,23 +230,25 @@ public class SoftwareModuleAddUpdateWindow extends CustomComponent implements Se
final String vendor = HawkbitCommonUtil.trimAndNullIfEmpty(vendorTextField.getValue());
final String description = HawkbitCommonUtil.trimAndNullIfEmpty(descTextArea.getValue());
final String type = typeComboBox.getValue() != null ? typeComboBox.getValue().toString() : null;
if (mandatoryCheck(name, version, type)) {
if (HawkbitCommonUtil.isDuplicate(name, version, type)) {
uiNotifcation.displayValidationError(
i18n.get("message.duplicate.softwaremodule", new Object[] { name, version }));
} else {
final SoftwareModule newBaseSoftwareModule = HawkbitCommonUtil.addNewBaseSoftware(entityFactory, name,
version, vendor, softwareManagement.findSoftwareModuleTypeByName(type), description);
if (newBaseSoftwareModule != null) {
/* display success message */
uiNotifcation.displaySuccess(i18n.get("message.save.success", new Object[] {
newBaseSoftwareModule.getName() + ":" + newBaseSoftwareModule.getVersion() }));
eventBus.publish(this,
new SoftwareModuleEvent(BaseEntityEventType.NEW_ENTITY, newBaseSoftwareModule));
}
// close the window
closeThisWindow();
if (!mandatoryCheck(name, version, type)) {
return;
}
if (HawkbitCommonUtil.isDuplicate(name, version, type)) {
uiNotifcation.displayValidationError(
i18n.get("message.duplicate.softwaremodule", new Object[] { name, version }));
} else {
final SoftwareModule newBaseSoftwareModule = HawkbitCommonUtil.addNewBaseSoftware(entityFactory, name,
version, vendor, softwareManagement.findSoftwareModuleTypeByName(type), description);
if (newBaseSoftwareModule != null) {
/* display success message */
uiNotifcation.displaySuccess(i18n.get("message.save.success",
new Object[] { newBaseSoftwareModule.getName() + ":" + newBaseSoftwareModule.getVersion() }));
eventBus.publish(this, new SoftwareModuleEvent(BaseEntityEventType.NEW_ENTITY, newBaseSoftwareModule));
}
// close the window
closeThisWindow();
}
}
@@ -343,29 +327,20 @@ public class SoftwareModuleAddUpdateWindow extends CustomComponent implements Se
return isValid;
}
/**
* saves or updates a softwareModule depending on the information if it is a
* new softwareModule or an existing one
*/
private void save() {
private void saveOrUpdate() {
if (editSwModule) {
updateSwModule();
} else {
/* add new or update software module */
addNewBaseSoftware();
}
}
/**
* Checks if the description and vendor have changed and set the button
* enabled/disabled
*
* @param event
* TextChangeEvent
* @return Boolean
*/
private boolean hasDescriptionOrVendorChanged(final TextChangeEvent event) {
private boolean hasDescriptionChanged(final TextChangeEvent event) {
return !(event.getText().equals(oldDescriptionValue) && vendorTextField.getValue().equals(oldVendorValue));
}
private boolean hasVendorChanged(final TextChangeEvent event) {
return !(event.getText().equals(oldVendorValue) && descTextArea.getValue().equals(oldDescriptionValue));
}
}

View File

@@ -43,7 +43,7 @@ import com.vaadin.ui.components.colorpicker.ColorSelector;
import com.vaadin.ui.themes.ValoTheme;
/**
*
* Layout for the create or update software module type.
*
*/
@SpringComponent
@@ -198,25 +198,24 @@ public class CreateUpdateSoftwareTypeLayout extends CreateUpdateTypeLayout
@Override
protected void save(final ClickEvent event) {
if (mandatoryValuesPresent()) {
final SoftwareModuleType existingSMTypeByKey = swTypeManagementService
.findSoftwareModuleTypeByKey(typeKey.getValue());
final SoftwareModuleType existingSMTypeByName = swTypeManagementService
.findSoftwareModuleTypeByName(tagName.getValue());
if (optiongroup.getValue().equals(createTypeStr)) {
if (!checkIsDuplicateByKey(existingSMTypeByKey) && !checkIsDuplicate(existingSMTypeByName)) {
createNewSWModuleType();
}
} else {
if (!mandatoryValuesPresent()) {
return;
}
updateSWModuleType(existingSMTypeByName);
final SoftwareModuleType existingSMTypeByKey = swTypeManagementService
.findSoftwareModuleTypeByKey(typeKey.getValue());
final SoftwareModuleType existingSMTypeByName = swTypeManagementService
.findSoftwareModuleTypeByName(tagName.getValue());
if (optiongroup.getValue().equals(createTypeStr)) {
if (!checkIsDuplicateByKey(existingSMTypeByKey) && !checkIsDuplicate(existingSMTypeByName)) {
createNewSWModuleType();
}
} else {
updateSWModuleType(existingSMTypeByName);
}
}
/**
* Create new tag.
*/
private void createNewSWModuleType() {
int assignNumber = 0;
final String colorPicked = ColorPickerHelper.getColorPickedString(getColorPickerLayout().getSelPreview());
@@ -253,9 +252,6 @@ public class CreateUpdateSoftwareTypeLayout extends CreateUpdateTypeLayout
}
}
/**
* update tag.
*/
private void updateSWModuleType(final SoftwareModuleType existingType) {
final String typeNameValue = HawkbitCommonUtil.trimAndNullIfEmpty(tagName.getValue());
@@ -307,29 +303,6 @@ public class CreateUpdateSoftwareTypeLayout extends CreateUpdateTypeLayout
tagPreviewBtnClicked = !tagPreviewBtnClicked;
}
/**
* Covert RGB code to {@Color}.
*
* @param value
* RGB vale
* @return Color
*/
protected Color rgbToColorConverter(final String value) {
if (value.startsWith("rgb")) {
final String[] colors = value.substring(value.indexOf('(') + 1, value.length() - 1).split(",");
final int red = Integer.parseInt(colors[0]);
final int green = Integer.parseInt(colors[1]);
final int blue = Integer.parseInt(colors[2]);
if (colors.length > 3) {
final int alpha = (int) (Double.parseDouble(colors[3]) * 255d);
return new Color(red, green, blue, alpha);
} else {
return new Color(red, green, blue);
}
}
return null;
}
@Override
public void addColorChangeListener(final ColorChangeListener listener) {
LOG.debug("inside addColorChangeListener");

View File

@@ -8,14 +8,12 @@
*/
package org.eclipse.hawkbit.ui.common;
import static com.google.common.base.Preconditions.checkNotNull;
import org.apache.commons.lang3.StringUtils;
import org.eclipse.hawkbit.ui.UiProperties;
import org.eclipse.hawkbit.ui.components.SPUIComponentProvider;
import org.eclipse.hawkbit.ui.decorators.SPUIButtonStyleBorderWithIcon;
import org.eclipse.hawkbit.ui.utils.SPUIComponentIdProvider;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import com.vaadin.data.Property.ValueChangeListener;
import com.vaadin.server.FontAwesome;
@@ -39,15 +37,13 @@ public class CommonDialogWindow extends Window {
private static final long serialVersionUID = -1321949234316858703L;
private static final Logger LOG = LoggerFactory.getLogger(CommonDialogWindow.class);
private final VerticalLayout mainLayout = new VerticalLayout();
private String caption;
private final String caption;
private Component content;
private final Component content;
private String helpLink;
private final String helpLink;
private Button saveButton;
@@ -57,25 +53,38 @@ public class CommonDialogWindow extends Window {
protected ValueChangeListener buttonEnableListener;
@Autowired
private transient UiProperties uiProperties;
private final ClickListener saveButtonClickListener;
public CommonDialogWindow() {
init(null, null);
}
private final ClickListener cancelButtonClickListener;
/**
* Constructor.
*
* @param caption
* the caption
* @param content
* the content
* @param helpLink
* the helpLinks
* @param saveButtonClickListener
* the saveButtonClickListener
* @param cancelButtonClickListener
* the cancelButtonClickListener
*/
public CommonDialogWindow(final String caption, final Component content, final String helpLink,
final ClickListener saveButtonClickListener, final ClickListener cancelButtonClickListener) {
checkNotNull(saveButtonClickListener);
checkNotNull(cancelButtonClickListener);
this.caption = caption;
this.content = content;
this.helpLink = helpLink;
this.saveButtonClickListener = saveButtonClickListener;
this.cancelButtonClickListener = cancelButtonClickListener;
init(saveButtonClickListener, cancelButtonClickListener);
init();
}
public void init(final ClickListener saveButtonClickListener, final ClickListener cancelButtonClickListener) {
private final void init() {
if (content instanceof AbstractOrderedLayout) {
((AbstractOrderedLayout) content).setSpacing(true);
@@ -85,8 +94,7 @@ public class CommonDialogWindow extends Window {
if (null != content) {
mainLayout.addComponent(content);
}
final HorizontalLayout buttonLayout = createActionButtonsLayout(saveButtonClickListener,
cancelButtonClickListener);
final HorizontalLayout buttonLayout = createActionButtonsLayout();
mainLayout.addComponent(buttonLayout);
mainLayout.setComponentAlignment(buttonLayout, Alignment.TOP_CENTER);
@@ -98,38 +106,15 @@ public class CommonDialogWindow extends Window {
addStyleName("fontsize");
}
private HorizontalLayout createActionButtonsLayout(final ClickListener saveButtonClickListener,
final ClickListener cancelButtonClickListener) {
private HorizontalLayout createActionButtonsLayout() {
buttonsLayout = new HorizontalLayout();
buttonsLayout.setSizeFull();
buttonsLayout.setSpacing(true);
saveButton = SPUIComponentProvider.getButton(SPUIComponentIdProvider.SAVE_BUTTON, "Save", "", "", true,
FontAwesome.SAVE, SPUIButtonStyleBorderWithIcon.class);
saveButton.setSizeUndefined();
saveButton.addStyleName("default-color");
if (null != saveButtonClickListener) {
saveButton.addClickListener(saveButtonClickListener);
} else {
throw new IllegalArgumentException("no ClickListener for save button specified");
}
buttonsLayout.addComponent(saveButton);
buttonsLayout.setComponentAlignment(saveButton, Alignment.MIDDLE_RIGHT);
buttonsLayout.setExpandRatio(saveButton, 1.0F);
createSaveButton();
cancelButton = SPUIComponentProvider.getButton(SPUIComponentIdProvider.CANCEL_BUTTON, "Cancel", "", "", true,
FontAwesome.TIMES, SPUIButtonStyleBorderWithIcon.class);
cancelButton.setSizeUndefined();
cancelButton.addStyleName("default-color");
if (null != cancelButtonClickListener) {
cancelButton.addClickListener(cancelButtonClickListener);
} else {
throw new IllegalArgumentException("no ClickListener for cancel button specified");
}
buttonsLayout.addComponent(cancelButton);
buttonsLayout.setComponentAlignment(cancelButton, Alignment.MIDDLE_LEFT);
buttonsLayout.setExpandRatio(cancelButton, 1.0F);
createCancelButton();
buttonsLayout.addStyleName("actionButtonsMargin");
addHelpLink();
@@ -137,13 +122,37 @@ public class CommonDialogWindow extends Window {
return buttonsLayout;
}
private void createCancelButton() {
cancelButton = SPUIComponentProvider.getButton(SPUIComponentIdProvider.CANCEL_BUTTON, "Cancel", "", "", true,
FontAwesome.TIMES, SPUIButtonStyleBorderWithIcon.class);
cancelButton.setSizeUndefined();
cancelButton.addStyleName("default-color");
cancelButton.addClickListener(cancelButtonClickListener);
buttonsLayout.addComponent(cancelButton);
buttonsLayout.setComponentAlignment(cancelButton, Alignment.MIDDLE_LEFT);
buttonsLayout.setExpandRatio(cancelButton, 1.0F);
}
private void createSaveButton() {
saveButton = SPUIComponentProvider.getButton(SPUIComponentIdProvider.SAVE_BUTTON, "Save", "", "", true,
FontAwesome.SAVE, SPUIButtonStyleBorderWithIcon.class);
saveButton.setSizeUndefined();
saveButton.addStyleName("default-color");
saveButton.addClickListener(saveButtonClickListener);
buttonsLayout.addComponent(saveButton);
buttonsLayout.setComponentAlignment(saveButton, Alignment.MIDDLE_RIGHT);
buttonsLayout.setExpandRatio(saveButton, 1.0F);
}
private void addHelpLink() {
if (StringUtils.isNotEmpty(helpLink)) {
final Link helpLinkComponent = SPUIComponentProvider.getHelpLink(helpLink);
buttonsLayout.addComponent(helpLinkComponent);
buttonsLayout.setComponentAlignment(helpLinkComponent, Alignment.MIDDLE_RIGHT);
if (StringUtils.isEmpty(helpLink)) {
return;
}
final Link helpLinkComponent = SPUIComponentProvider.getHelpLink(helpLink);
buttonsLayout.addComponent(helpLinkComponent);
buttonsLayout.setComponentAlignment(helpLinkComponent, Alignment.MIDDLE_RIGHT);
}
public void setSaveButtonEnabled(final boolean enabled) {

View File

@@ -12,13 +12,13 @@ import com.vaadin.server.Resource;
import com.vaadin.ui.Button;
import com.vaadin.ui.themes.ValoTheme;
/**
* Button with icon decorator.
*
*/
public class SPUIButtonStyleBorderWithIcon implements SPUIButtonDecorator {
Button button;
/**
* Style for button: Primary.
*/
private Button button;
@Override
public Button decorate(final Button button, final String style, final boolean setStyle, final Resource icon) {
@@ -36,19 +36,22 @@ public class SPUIButtonStyleBorderWithIcon implements SPUIButtonDecorator {
private void setButtonStyle(final String style, final boolean setStyle) {
if (null != style) {
if (setStyle) {
button.setStyleName(style);
} else {
button.addStyleName(style);
}
if (style == null) {
return;
}
if (setStyle) {
button.setStyleName(style);
} else {
button.addStyleName(style);
}
}
private void setButtonIcon(final Resource icon) {
if (null != icon) {
button.setIcon(icon);
if (icon == null) {
return;
}
button.setIcon(icon);
}
}