Column expand ratio changes

Signed-off-by: asharani-murugesh <asharani.murugesh@in.bosch.com>
This commit is contained in:
asharani-murugesh
2016-02-22 15:36:02 +01:00
parent 8bef00496c
commit 79d615dd3b
14 changed files with 166 additions and 142 deletions

View File

@@ -19,7 +19,7 @@ public class HtmlButtonRenderer extends ButtonRenderer {
private void applystyles(Button button) {
button.setStylePrimaryName("v-button");
button.addStyleName("tiny v-button-tiny");
button.setStyleName("tiny v-button-tiny");
button.addStyleName("borderless v-button-borderless");
button.addStyleName("icon-only v-button-icon-only");
button.addStyleName("button-no-border v-button-button-no-border");

View File

@@ -26,6 +26,9 @@ public class HtmlLabelRenderer extends WidgetRenderer<String, VLabel> {
if (value != null) {
label.setHTML("<span>&#x" + Integer.toHexString(Integer.parseInt(value)) + ";</span>");
}
else{
label.setHTML("<span></span>");
}
applyStyle(label, style);
label.setTitle(description);
label.getElement().setId(id);
@@ -33,7 +36,7 @@ public class HtmlLabelRenderer extends WidgetRenderer<String, VLabel> {
private void applyStyle(VLabel label, String style) {
label.setStylePrimaryName("v-label");
label.addStyleName("small v-label-small");
label.setStyleName("small v-label-small");
label.addStyleName("font-icon v-label-font-icon");
if (style != null) {
label.addStyleName(style + " v-label-" + style);

View File

@@ -12,11 +12,12 @@ public class LinkRenderer extends ButtonRenderer {
// this is to allow the button to disappear, if the text is null
button.setVisible(text != null);
button.getElement().setId(new StringBuilder("link").append(".").append(text).toString());
button.setTitle(text);
}
private void applystyle(Button button) {
button.setStylePrimaryName("v-button");
button.addStyleName("borderless v-button-borderless");
button.setStyleName("borderless v-button-borderless");
button.addStyleName("small v-button-small");
button.addStyleName("on-focus-no-border v-button-on-focus-no-border");
button.addStyleName("link v-button-link");

View File

@@ -8,17 +8,12 @@
*/
package org.eclipse.hawkbit.ui.rollout;
import java.util.ArrayList;
import java.util.List;
import org.eclipse.hawkbit.ui.utils.SPUIDefinitions;
import org.eclipse.hawkbit.ui.utils.TableColumn;
import com.vaadin.data.Container;
import com.vaadin.data.Container.Indexed;
import com.vaadin.shared.ui.grid.HeightMode;
import com.vaadin.ui.Grid;
import com.vaadin.ui.Table;
import com.vaadin.ui.Grid.Column;
import com.vaadin.ui.themes.ValoTheme;
/**
@@ -36,40 +31,28 @@ public abstract class AbstractSimpleGrid extends Grid {
setSizeFull();
setImmediate(true);
setId(getTableId());
setHeight("200px");
setWidth("200px");
// addStyleName("sp-table rollout-table");
addStyleName(ValoTheme.TABLE_NO_VERTICAL_LINES);
addStyleName(ValoTheme.TABLE_SMALL);
addNewContainerDS();
// addValueChangeListener(event -> onValueChange());
// setPageLength(SPUIDefinitions.PAGE_SIZE);
setSelectionMode(SelectionMode.NONE);
// setColumnCollapsingAllowed(true);
addColumnRenderes();
setColumnReorderingAllowed(true);
}
public void addNewContainerDS() {
private void addNewContainerDS() {
final Container container = createContainer();
setContainerDataSource((Indexed) container);
addContainerProperties();
setColumnExpandRatio();
setColumnProperties();
setColumnHeaderNames();
setColumnExpandRatio();
//Allow column hiding
addColumnRenderes();
// Allow column hiding
for (Column c : getColumns()) {
c.setHidable(true);
c.setHidable(true);
}
setHiddenColumns();
int size = 0;
if (container != null) {
size = container.size();
@@ -77,22 +60,22 @@ public abstract class AbstractSimpleGrid extends Grid {
if (size == 0) {
setData(SPUIDefinitions.NO_DATA);
}
}
protected abstract Container createContainer();
protected abstract void addContainerProperties();
protected abstract void setColumnExpandRatio() ;
protected abstract void setColumnExpandRatio();
protected abstract void setColumnHeaderNames() ;
protected abstract void setColumnHeaderNames();
protected abstract String getTableId();
protected abstract void setColumnProperties() ;
protected abstract void addColumnRenderes() ;
protected abstract void setHiddenColumns();
protected abstract void setColumnProperties();
protected abstract void addColumnRenderes();
protected abstract void setHiddenColumns();
}

View File

@@ -28,14 +28,12 @@ public abstract class AbstractSimpleTableLayout extends VerticalLayout {
private AbstractSimpleTableHeader tableHeader;
private AbstractSimpleTable table;
private AbstractSimpleGrid grid;
protected void init(final AbstractSimpleTableHeader tableHeader, final AbstractSimpleTable table,final AbstractSimpleGrid grid) {
protected void init(final AbstractSimpleTableHeader tableHeader,final AbstractSimpleGrid grid) {
this.tableHeader = tableHeader;
this.table = table;
this.grid = grid;
buildLayout();
}
@@ -54,7 +52,7 @@ public abstract class AbstractSimpleTableLayout extends VerticalLayout {
tableHeaderLayout.addComponent(tableHeader);
tableHeaderLayout.setComponentAlignment(tableHeader, Alignment.TOP_CENTER);
grid.setSizeFull();
// grid.setSizeFull();
tableHeaderLayout.addComponent(grid);
tableHeaderLayout.setComponentAlignment(grid, Alignment.TOP_CENTER);
tableHeaderLayout.setExpandRatio(grid, 1.0f);

View File

@@ -149,31 +149,35 @@ public class RolloutGroupListGrid extends AbstractSimpleGrid {
@Override
protected void setColumnExpandRatio() {
getColumn(SPUILabelDefinitions.VAR_NAME).setExpandRatio(1);
getColumn(SPUILabelDefinitions.VAR_NAME).setMinimumWidth(40);
getColumn(SPUILabelDefinitions.VAR_NAME).setMaximumWidth(150);
getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS).setMinimumWidth(95);
getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS).setExpandRatio(1);
getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS).setMaximumWidth(100);
getColumn(SPUILabelDefinitions.VAR_STATUS).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_STATUS).setMinimumWidth(75);
getColumn(SPUILabelDefinitions.VAR_STATUS).setMaximumWidth(75);
getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS_COUNT_STATUS).setExpandRatio(2);
getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS_COUNT_STATUS).setMinimumWidth(400);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_INSTALLED_PERCENTAGE).setExpandRatio(0);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_INSTALLED_PERCENTAGE).setMinimumWidth(80);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_INSTALLED_PERCENTAGE).setExpandRatio(1);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_INSTALLED_PERCENTAGE).setMaximumWidth(100);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_ERROR_THRESHOLD).setExpandRatio(0);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_ERROR_THRESHOLD).setMinimumWidth(100);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_ERROR_THRESHOLD).setExpandRatio(1);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_ERROR_THRESHOLD).setMaximumWidth(100);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_THRESHOLD).setExpandRatio(0);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_THRESHOLD).setMinimumWidth(140);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_THRESHOLD).setExpandRatio(1);
getColumn(SPUILabelDefinitions.ROLLOUT_GROUP_THRESHOLD).setMaximumWidth(100);
getColumn(SPUILabelDefinitions.VAR_CREATED_DATE).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_CREATED_USER).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_MODIFIED_DATE).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_MODIFIED_BY).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_DESC).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_ID).setExpandRatio(0);
setFrozenColumnCount(7);
}
@Override
@@ -217,7 +221,6 @@ public class RolloutGroupListGrid extends AbstractSimpleGrid {
columnList.add(SPUILabelDefinitions.VAR_MODIFIED_BY);
columnList.add(SPUILabelDefinitions.VAR_DESC);
setColumnOrder(columnList.toArray());
alignColumns();
}
@@ -289,23 +292,23 @@ public class RolloutGroupListGrid extends AbstractSimpleGrid {
String result = null;
switch (value) {
case FINISHED:
result = HawkbitCommonUtil.getFormattedString(Integer.toString(FontAwesome.CHECK_CIRCLE.getCodepoint()),
result = HawkbitCommonUtil.getStatusLabelDetailsInString(Integer.toString(FontAwesome.CHECK_CIRCLE.getCodepoint()),
value.name().toLowerCase(), "statusIconGreen", SPUIComponetIdProvider.ROLLOUT_GROUP_STATUS_LABEL_ID);
break;
case SCHEDULED:
result = HawkbitCommonUtil.getFormattedString(Integer.toString(FontAwesome.BULLSEYE.getCodepoint()),
result = HawkbitCommonUtil.getStatusLabelDetailsInString(Integer.toString(FontAwesome.BULLSEYE.getCodepoint()),
value.name().toLowerCase(), "statusIconBlue", SPUIComponetIdProvider.ROLLOUT_GROUP_STATUS_LABEL_ID);
break;
case RUNNING:
result = HawkbitCommonUtil.getFormattedString(Integer.toString(FontAwesome.ADJUST.getCodepoint()),
result = HawkbitCommonUtil.getStatusLabelDetailsInString(Integer.toString(FontAwesome.ADJUST.getCodepoint()),
value.name().toLowerCase(), "statusIconYellow", SPUIComponetIdProvider.ROLLOUT_GROUP_STATUS_LABEL_ID);
break;
case READY:
result = HawkbitCommonUtil.getFormattedString(Integer.toString(FontAwesome.DOT_CIRCLE_O.getCodepoint()),
result = HawkbitCommonUtil.getStatusLabelDetailsInString(Integer.toString(FontAwesome.DOT_CIRCLE_O.getCodepoint()),
value.name().toLowerCase(), "statusIconLightBlue", SPUIComponetIdProvider.ROLLOUT_GROUP_STATUS_LABEL_ID);
break;
case ERROR:
result = HawkbitCommonUtil.getFormattedString(Integer.toString(FontAwesome.EXCLAMATION_CIRCLE.getCodepoint()),
result = HawkbitCommonUtil.getStatusLabelDetailsInString(Integer.toString(FontAwesome.EXCLAMATION_CIRCLE.getCodepoint()),
value.name().toLowerCase(), "statusIconRed", SPUIComponetIdProvider.ROLLOUT_GROUP_STATUS_LABEL_ID);
break;
default:

View File

@@ -10,8 +10,10 @@ import javax.annotation.PreDestroy;
import org.eclipse.hawkbit.repository.model.Action.Status;
import org.eclipse.hawkbit.repository.model.RolloutGroup;
import org.eclipse.hawkbit.repository.model.RolloutGroup.RolloutGroupStatus;
import org.eclipse.hawkbit.ui.customrenderers.renderers.HtmlLabelRenderer;
import org.eclipse.hawkbit.ui.rollout.event.RolloutEvent;
import org.eclipse.hawkbit.ui.rollout.state.RolloutUIState;
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
import org.eclipse.hawkbit.ui.utils.I18N;
import org.eclipse.hawkbit.ui.utils.SPUIComponetIdProvider;
import org.eclipse.hawkbit.ui.utils.SPUIDefinitions;
@@ -29,7 +31,6 @@ import com.vaadin.data.util.converter.Converter;
import com.vaadin.server.FontAwesome;
import com.vaadin.spring.annotation.SpringComponent;
import com.vaadin.spring.annotation.ViewScope;
import com.vaadin.ui.renderers.HtmlRenderer;
@SpringComponent
@ViewScope
@@ -98,32 +99,29 @@ public class RolloutGroupTargetsListGrid extends AbstractSimpleGrid {
@Override
protected void setColumnExpandRatio() {
setSizeFull();
getColumn(SPUILabelDefinitions.VAR_NAME).setExpandRatio(1);
getColumn(SPUILabelDefinitions.VAR_LAST_MODIFIED_BY).setMaximumWidth(200);
getColumn(SPUILabelDefinitions.VAR_NAME).setExpandRatio(2);
getColumn(SPUILabelDefinitions.VAR_NAME).setMinimumWidth(200);
getColumn(SPUILabelDefinitions.VAR_STATUS).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_STATUS).setMinimumWidth(100);
getColumn(SPUILabelDefinitions.VAR_STATUS).setMinimumWidth(150);
getColumn(SPUILabelDefinitions.VAR_CREATED_DATE).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_CREATED_DATE).setMaximumWidth(200);
getColumn(SPUILabelDefinitions.VAR_CREATED_DATE).setExpandRatio(1);
getColumn(SPUILabelDefinitions.VAR_CREATED_DATE).setMaximumWidth(250);
getColumn(SPUILabelDefinitions.VAR_CREATED_BY).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_CREATED_BY).setMaximumWidth(200);
getColumn(SPUILabelDefinitions.VAR_CREATED_BY).setExpandRatio(1);
getColumn(SPUILabelDefinitions.VAR_CREATED_BY).setMaximumWidth(250);
getColumn(SPUILabelDefinitions.VAR_LAST_MODIFIED_DATE).setExpandRatio(1);
getColumn(SPUILabelDefinitions.VAR_LAST_MODIFIED_DATE).setMaximumWidth(250);
getColumn(SPUILabelDefinitions.VAR_LAST_MODIFIED_DATE).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_LAST_MODIFIED_DATE).setMaximumWidth(200);
getColumn(SPUILabelDefinitions.VAR_LAST_MODIFIED_BY).setExpandRatio(1);
getColumn(SPUILabelDefinitions.VAR_LAST_MODIFIED_BY).setMaximumWidth(250);
getColumn(SPUILabelDefinitions.VAR_LAST_MODIFIED_BY).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_LAST_MODIFIED_BY).setMaximumWidth(200);
getColumn(SPUILabelDefinitions.VAR_DESC).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_DESC).setMaximumWidth(200);
getColumn(SPUILabelDefinitions.VAR_DESC).setExpandRatio(1);
getColumn(SPUILabelDefinitions.VAR_DESC).setMaximumWidth(300);
getColumn(SPUILabelDefinitions.ASSIGNED_DISTRIBUTION_NAME_VER).setExpandRatio(0);
setFrozenColumnCount(getColumns().size());
}
@@ -180,11 +178,11 @@ public class RolloutGroupTargetsListGrid extends AbstractSimpleGrid {
@Override
protected void setHiddenColumns() {
getColumn(SPUILabelDefinitions.ASSIGNED_DISTRIBUTION_NAME_VER).setHidden(true);
getColumn(SPUILabelDefinitions.ASSIGNED_DISTRIBUTION_NAME_VER).setHidden(true);
}
private void addStatusCoulmn() {
getColumn(SPUILabelDefinitions.VAR_STATUS).setRenderer(new HtmlRenderer(), new Converter<String, Status>() {
getColumn(SPUILabelDefinitions.VAR_STATUS).setRenderer(new HtmlLabelRenderer(), new Converter<String, Status>() {
private static final long serialVersionUID = 1L;
@Override
@@ -198,31 +196,45 @@ public class RolloutGroupTargetsListGrid extends AbstractSimpleGrid {
final Locale locale) {
String result = null;
if (status == null) {
//Actions are not created for targets when rollout's status is READY and when duplicate assignment is done.
//In these cases display a appropriate status with description
return getStatus(status);
// Actions are not created for targets when rollout's status
// is READY and when duplicate assignment is done.
// In these cases display a appropriate status with
// description
return getStatus();
} else {
switch (status) {
case FINISHED:
result = "<div class=\"statusIconGreen\">" + FontAwesome.CHECK_CIRCLE.getHtml() + "</div>";
result = HawkbitCommonUtil.getStatusLabelDetailsInString(
Integer.toString(FontAwesome.CHECK_CIRCLE.getCodepoint()), status.name().toLowerCase(),
"statusIconGreen", null);
break;
case SCHEDULED:
result = "<div class=\"statusIconBlue\">" + FontAwesome.BULLSEYE.getHtml() + "</div>";
result = HawkbitCommonUtil.getStatusLabelDetailsInString(
Integer.toString(FontAwesome.BULLSEYE.getCodepoint()), status.name().toLowerCase(),
"statusIconBlue", null);
break;
case RUNNING:
case RETRIEVED:
case WARNING:
case DOWNLOAD:
result = "<div class=\"statusIconYellow\">" + FontAwesome.ADJUST.getHtml() + "</div>";
result = HawkbitCommonUtil.getStatusLabelDetailsInString(
Integer.toString(FontAwesome.ADJUST.getCodepoint()), status.name().toLowerCase(),
"statusIconYellow", null);
break;
case CANCELING:
result = "<div class=\"statusIconPending\">" + FontAwesome.TIMES_CIRCLE.getHtml() + "</div>";
result = HawkbitCommonUtil.getStatusLabelDetailsInString(
Integer.toString(FontAwesome.TIMES_CIRCLE.getCodepoint()), status.name().toLowerCase(),
"statusIconPending", null);
break;
case CANCELED:
result = "<div class=\"statusIconGreen\">" + FontAwesome.TIMES_CIRCLE.getHtml() + "</div>";
result = HawkbitCommonUtil.getStatusLabelDetailsInString(
Integer.toString(FontAwesome.TIMES_CIRCLE.getCodepoint()), status.name().toLowerCase(),
"statusIconGreen", null);
break;
case ERROR:
result = "<div class=\"statusIconRed\">" + FontAwesome.EXCLAMATION_CIRCLE.getHtml() + "</div>";
result = HawkbitCommonUtil.getStatusLabelDetailsInString(
Integer.toString(FontAwesome.EXCLAMATION_CIRCLE.getCodepoint()),
status.name().toLowerCase(), "statusIconRed", null);
break;
default:
break;
@@ -243,19 +255,19 @@ public class RolloutGroupTargetsListGrid extends AbstractSimpleGrid {
});
}
private String getStatus(Status status) {
private String getStatus() {
final RolloutGroup rolloutGroup = rolloutUIState.getRolloutGroup().isPresent()
? rolloutUIState.getRolloutGroup().get() : null;
if (rolloutGroup != null && rolloutGroup.getStatus() == RolloutGroupStatus.READY) {
return "<div class=\"statusIconLightBlue\">" + FontAwesome.DOT_CIRCLE_O.getHtml() + "</div>";
return HawkbitCommonUtil.getStatusLabelDetailsInString(
Integer.toString(FontAwesome.DOT_CIRCLE_O.getCodepoint()), RolloutGroupStatus.READY.toString().toLowerCase(),
"statusIconLightBlue", null);
} else if (rolloutGroup != null && rolloutGroup.getStatus() == RolloutGroupStatus.FINISHED) {
return "<div class=\"statusIconBlue\">" + FontAwesome.MINUS_CIRCLE.getHtml() + "</div>";
// TODO set descriptionf or status icons
// final String dsNameVersion = (String) item.getItemProperty(
// SPUILabelDefinitions.ASSIGNED_DISTRIBUTION_NAME_VER).getValue();
// statusLabel.setDescription(i18n
// .get("message.dist.already.assigned", new Object[] {
// dsNameVersion }));
String ds = rolloutUIState.getRolloutDistributionSet().isPresent()? rolloutUIState.getRolloutDistributionSet() .get():"";
ds = ds.replace(":", "-");
return HawkbitCommonUtil.getStatusLabelDetailsInString(
Integer.toString(FontAwesome.MINUS_CIRCLE.getCodepoint()),
i18n.get("message.dist.already.assigned", new Object[] { ds }), "statusIconBlue", null);
}
return null;
}

View File

@@ -29,29 +29,28 @@ public class RolloutGroupTargetsListView extends AbstractSimpleTableLayout {
private RolloutGroupTargetsListHeader rolloutGroupTargetsListHeader;
@Autowired
private RolloutGroupTargetsListTable rolloutGroupTargetsListTable;
private RolloutGroupTargetsCountLabelMessage rolloutGroupTargetsCountLabelMessage;
@Autowired
private RolloutGroupTargetsCountLabelMessage rolloutGroupTargetsCountLabelMessage;
@Autowired
private RolloutGroupTargetsListGrid rolloutListGrid;
/**
* Initialization of Rollout group component.
*/
@PostConstruct
protected void init() {
super.init(rolloutGroupTargetsListHeader, rolloutGroupTargetsListTable,rolloutListGrid);
super.init(rolloutGroupTargetsListHeader, rolloutListGrid);
}
@Override
protected boolean hasCountMessage() {
return true;
}
@Override
protected Label getCountMessageLabel() {
return rolloutGroupTargetsCountLabelMessage;
}

View File

@@ -29,16 +29,12 @@ public class RolloutGroupsListView extends AbstractSimpleTableLayout {
@Autowired
private RolloutGroupsListHeader rolloutGroupListHeader;
@Autowired
private RolloutGroupListTable rolloutGroupListTable;
@Autowired
private RolloutGroupListGrid rolloutListGrid;
@PostConstruct
protected void init() {
super.init(rolloutGroupListHeader, rolloutGroupListTable,rolloutListGrid);
super.init(rolloutGroupListHeader, rolloutListGrid);
}
@Override

View File

@@ -38,7 +38,6 @@ import org.vaadin.spring.events.EventBus;
import org.vaadin.spring.events.EventScope;
import org.vaadin.spring.events.annotation.EventBusListenerMethod;
import com.google.common.base.Strings;
import com.vaadin.data.Container;
import com.vaadin.data.Item;
import com.vaadin.data.util.PropertyValueGenerator;
@@ -47,11 +46,9 @@ import com.vaadin.server.AbstractClientConnector;
import com.vaadin.server.FontAwesome;
import com.vaadin.spring.annotation.SpringComponent;
import com.vaadin.spring.annotation.ViewScope;
import com.vaadin.ui.Label;
import com.vaadin.ui.UI;
import com.vaadin.ui.Window;
import com.vaadin.ui.renderers.ClickableRenderer.RendererClickEvent;
import com.vaadin.ui.renderers.HtmlRenderer;
@SpringComponent
@ViewScope
@@ -110,7 +107,7 @@ public class RolloutListGrid extends AbstractSimpleGrid {
@SuppressWarnings("unchecked")
@EventBusListenerMethod(scope = EventScope.SESSION)
public void onEvent(final RolloutChangeEvent rolloutChangeEvent) {
if (rolloutUIState.isShowRolloutGroups()) {
if (rolloutUIState.isShowRollOuts()) {
final Rollout rollout = rolloutManagement.findRolloutWithDetailedStatus(rolloutChangeEvent.getRolloutId());
final TotalTargetCountStatus totalTargetCountStatus = rollout.getTotalTargetCountStatus();
final LazyQueryContainer rolloutContainer = (LazyQueryContainer) getContainerDataSource();
@@ -159,7 +156,6 @@ public class RolloutListGrid extends AbstractSimpleGrid {
false);
rolloutGridContainer.addContainerProperty(SPUILabelDefinitions.VAR_TOTAL_TARGETS, String.class, "0", false,
false);
rolloutGridContainer.addContainerProperty(SPUILabelDefinitions.VAR_TOTAL_TARGETS_COUNT_STATUS,
TotalTargetCountStatus.class, null, false, false);
@@ -182,12 +178,12 @@ public class RolloutListGrid extends AbstractSimpleGrid {
columnList.add(SPUILabelDefinitions.VAR_TOTAL_TARGETS_COUNT_STATUS);
columnList.add(SPUILabelDefinitions.VAR_NUMBER_OF_GROUPS);
columnList.add(SPUILabelDefinitions.VAR_TOTAL_TARGETS);
columnList.add(SPUILabelDefinitions.ACTION);
columnList.add(SPUILabelDefinitions.VAR_CREATED_DATE);
columnList.add(SPUILabelDefinitions.VAR_CREATED_USER);
columnList.add(SPUILabelDefinitions.VAR_MODIFIED_DATE);
columnList.add(SPUILabelDefinitions.VAR_MODIFIED_BY);
columnList.add(SPUILabelDefinitions.VAR_DESC);
columnList.add(SPUILabelDefinitions.ACTION);
setColumnOrder(columnList.toArray());
alignColumns();
@@ -218,6 +214,7 @@ public class RolloutListGrid extends AbstractSimpleGrid {
columnsToBeHidden.add(SPUILabelDefinitions.VAR_MODIFIED_BY);
columnsToBeHidden.add(SPUILabelDefinitions.VAR_DESC);
columnsToBeHidden.add(SPUILabelDefinitions.VAR_ID);
for (Object propertyId : columnsToBeHidden) {
getColumn(propertyId).setHidden(true);
}
@@ -243,14 +240,15 @@ public class RolloutListGrid extends AbstractSimpleGrid {
@Override
protected void setColumnExpandRatio() {
getColumn(SPUILabelDefinitions.VAR_NAME).setExpandRatio(1);
getColumn(SPUILabelDefinitions.VAR_NAME).setMaximumWidth(300);
getColumn(SPUILabelDefinitions.VAR_NAME).setMinimumWidth(40);
getColumn(SPUILabelDefinitions.VAR_NAME).setMaximumWidth(150);
getColumn(SPUILabelDefinitions.VAR_DIST_NAME_VERSION).setExpandRatio(1);
getColumn(SPUILabelDefinitions.VAR_DIST_NAME_VERSION).setMaximumWidth(300);
getColumn(SPUILabelDefinitions.VAR_DIST_NAME_VERSION).setMinimumWidth(40);
getColumn(SPUILabelDefinitions.VAR_DIST_NAME_VERSION).setMaximumWidth(150);
getColumn(SPUILabelDefinitions.VAR_NUMBER_OF_GROUPS).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS).setMinimumWidth(95);
getColumn(SPUILabelDefinitions.VAR_CREATED_DATE).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_CREATED_USER).setExpandRatio(0);
@@ -258,14 +256,12 @@ public class RolloutListGrid extends AbstractSimpleGrid {
getColumn(SPUILabelDefinitions.VAR_MODIFIED_BY).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_DESC).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_STATUS).setExpandRatio(0);
getColumn(SPUILabelDefinitions.VAR_STATUS).setMinimumWidth(75);
getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS_COUNT_STATUS).setExpandRatio(2);
getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS_COUNT_STATUS).setMinimumWidth(600);
getColumn(SPUILabelDefinitions.ACTION).setExpandRatio(0);
getColumn(SPUILabelDefinitions.ACTION).setMinimumWidth(90);
setFrozenColumnCount(getColumns().size());
}
@Override
@@ -281,6 +277,9 @@ public class RolloutListGrid extends AbstractSimpleGrid {
final String rolloutName = (String) getContainerDataSource().getItem(event.getItemId())
.getItemProperty(SPUILabelDefinitions.VAR_NAME).getValue();
rolloutUIState.setRolloutName(rolloutName);
String ds = (String) getContainerDataSource().getItem(event.getItemId())
.getItemProperty(SPUILabelDefinitions.VAR_DIST_NAME_VERSION).getValue();
rolloutUIState.setRolloutDistributionSet(ds);
eventBus.publish(this, RolloutEvent.SHOW_ROLLOUT_GROUPS);
}
@@ -380,40 +379,40 @@ public class RolloutListGrid extends AbstractSimpleGrid {
String result = null;
switch (value) {
case FINISHED:
result = HawkbitCommonUtil.getFormattedString(Integer.toString(FontAwesome.CHECK_CIRCLE.getCodepoint()),
result = HawkbitCommonUtil.getStatusLabelDetailsInString(Integer.toString(FontAwesome.CHECK_CIRCLE.getCodepoint()),
value.name().toLowerCase(), "statusIconGreen", SPUIComponetIdProvider.ROLLOUT_STATUS_LABEL_ID);
break;
case PAUSED:
result = HawkbitCommonUtil.getFormattedString(Integer.toString(FontAwesome.PAUSE.getCodepoint()),
result = HawkbitCommonUtil.getStatusLabelDetailsInString(Integer.toString(FontAwesome.PAUSE.getCodepoint()),
value.name().toLowerCase(), "statusIconBlue", SPUIComponetIdProvider.ROLLOUT_STATUS_LABEL_ID);
break;
case RUNNING:
result = HawkbitCommonUtil.getFormattedString(null, value.name().toLowerCase(), "yellowSpinner",
result = HawkbitCommonUtil.getStatusLabelDetailsInString(null, value.name().toLowerCase(), "yellowSpinner",
SPUIComponetIdProvider.ROLLOUT_STATUS_LABEL_ID);
break;
case READY:
result = HawkbitCommonUtil.getFormattedString(Integer.toString(FontAwesome.DOT_CIRCLE_O.getCodepoint()),
result = HawkbitCommonUtil.getStatusLabelDetailsInString(Integer.toString(FontAwesome.DOT_CIRCLE_O.getCodepoint()),
value.name().toLowerCase(), "statusIconLightBlue", SPUIComponetIdProvider.ROLLOUT_STATUS_LABEL_ID);
break;
case STOPPED:
result = HawkbitCommonUtil.getFormattedString(Integer.toString(FontAwesome.STOP.getCodepoint()),
result = HawkbitCommonUtil.getStatusLabelDetailsInString(Integer.toString(FontAwesome.STOP.getCodepoint()),
value.name().toLowerCase(), "statusIconRed", SPUIComponetIdProvider.ROLLOUT_STATUS_LABEL_ID);
break;
case CREATING:
result = HawkbitCommonUtil.getFormattedString(null, value.name().toLowerCase(), "greySpinner",
result = HawkbitCommonUtil.getStatusLabelDetailsInString(null, value.name().toLowerCase(), "greySpinner",
SPUIComponetIdProvider.ROLLOUT_STATUS_LABEL_ID);
break;
case STARTING:
result = HawkbitCommonUtil.getFormattedString(null, value.name().toLowerCase(), "blueSpinner",
result = HawkbitCommonUtil.getStatusLabelDetailsInString(null, value.name().toLowerCase(), "blueSpinner",
SPUIComponetIdProvider.ROLLOUT_STATUS_LABEL_ID);
break;
case ERROR_CREATING:
result = HawkbitCommonUtil.getFormattedString(
result = HawkbitCommonUtil.getStatusLabelDetailsInString(
Integer.toString(FontAwesome.EXCLAMATION_CIRCLE.getCodepoint()), value.name().toLowerCase(),
"statusIconRed", SPUIComponetIdProvider.ROLLOUT_STATUS_LABEL_ID);
break;
case ERROR_STARTING:
result = HawkbitCommonUtil.getFormattedString(
result = HawkbitCommonUtil.getStatusLabelDetailsInString(
Integer.toString(FontAwesome.EXCLAMATION_CIRCLE.getCodepoint()), value.name().toLowerCase(),
"statusIconRed", SPUIComponetIdProvider.ROLLOUT_STATUS_LABEL_ID);
break;

View File

@@ -30,28 +30,23 @@ public class RolloutListView extends AbstractSimpleTableLayout {
@Autowired
private RolloutListHeader rolloutListHeader;
@Autowired
private RolloutListTable rolloutListTable;
@Autowired
private RolloutListGrid rolloutListGrid;
@PostConstruct
void init() {
super.init(rolloutListHeader, rolloutListTable,rolloutListGrid);
super.init(rolloutListHeader, rolloutListGrid);
}
@Override
protected boolean hasCountMessage() {
return false;
}
@Override
protected Label getCountMessageLabel() {
return null;
}

View File

@@ -44,6 +44,8 @@ public class RolloutUIState implements Serializable {
private long rolloutGroupTargetsTotalCount;
private String rolloutDistributionSet;
/**
* @return the searchText
*/
@@ -178,4 +180,20 @@ public class RolloutUIState implements Serializable {
public void setRolloutGroupTargetsTotalCount(final long rolloutGroupTargetsTotalCount) {
this.rolloutGroupTargetsTotalCount = rolloutGroupTargetsTotalCount;
}
/**
* @return rolloutDistributionSet
*/
public Optional<String> getRolloutDistributionSet() {
return rolloutDistributionSet == null ? Optional.empty() : Optional.of(rolloutDistributionSet);
}
/**
*
* @param rolloutDistributionSet
* the distribution set of the rollout
*/
public void setRolloutDistributionSet(String rolloutDistributionSet) {
this.rolloutDistributionSet = rolloutDistributionSet;
}
}

View File

@@ -17,9 +17,9 @@ import java.util.HashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.TimeZone;
import java.util.Map.Entry;
import org.apache.commons.lang3.StringUtils;
import org.eclipse.hawkbit.im.authentication.UserPrincipal;
@@ -31,10 +31,10 @@ import org.eclipse.hawkbit.repository.model.SoftwareModule;
import org.eclipse.hawkbit.repository.model.SoftwareModuleType;
import org.eclipse.hawkbit.repository.model.TargetIdName;
import org.eclipse.hawkbit.repository.model.TargetInfo.PollStatus;
import org.eclipse.hawkbit.repository.model.TotalTargetCountStatus.Status;
import org.eclipse.hawkbit.repository.model.TargetTagAssigmentResult;
import org.eclipse.hawkbit.repository.model.TargetUpdateStatus;
import org.eclipse.hawkbit.repository.model.TotalTargetCountStatus;
import org.eclipse.hawkbit.repository.model.TotalTargetCountStatus.Status;
import org.eclipse.hawkbit.ui.management.dstable.DistributionTable;
import org.eclipse.hawkbit.ui.management.targettable.TargetTable;
import org.slf4j.Logger;
@@ -1371,8 +1371,21 @@ public final class HawkbitCommonUtil {
return finalVal;
}
public static String getFormattedString(String value, String description, String style, String id) {
/**
* Returns a formatted string as needed by label custom render .This string
* holds the properties of a status label.
*
* @param value
* label value
* @param description
* label description
* @param style
* label style
* @param id
* label id
* @return
*/
public static String getStatusLabelDetailsInString(String value, String description, String style, String id) {
StringBuilder val = new StringBuilder();
if (!Strings.isNullOrEmpty(value)) {
val.append("value:").append(value).append(",");

View File

@@ -69,5 +69,9 @@
height: 34px !important;
}
.v-grid-cell.frozen{
box-shadow: none!important;
}
}