public static CustomConfigMeasurementRangeEditor getMeasurementRangeEditor(Configuration portletConfig) {
return new CustomConfigMeasurementRangeEditor(portletConfig);
}
public static SelectItem getOperationStatusEditor(Configuration portletConfig) {
SelectItem priorityFilter = new SelectItem(Constant.OPERATION_STATUS, MSG.common_title_operation_status());
priorityFilter.setWrapTitle(false);
priorityFilter.setWidth(325);
priorityFilter.setMultiple(true);
priorityFilter.setMultipleAppearance(MultipleAppearance.PICKLIST);
LinkedHashMap<String, String> stati = new LinkedHashMap<String, String>(4);
stati.put(OperationRequestStatus.SUCCESS.name(), MSG.common_status_success());
stati.put(OperationRequestStatus.INPROGRESS.name(), MSG.common_status_inprogress());
stati.put(OperationRequestStatus.CANCELED.name(), MSG.common_status_canceled());
stati.put(OperationRequestStatus.FAILURE.name(), MSG.common_status_failed());
LinkedHashMap<String, String> statusIcons = new LinkedHashMap<String, String>(3);
statusIcons.put(OperationRequestStatus.SUCCESS.name(),
ImageManager.getOperationResultsIcon(OperationRequestStatus.SUCCESS));
statusIcons.put(OperationRequestStatus.INPROGRESS.name(),
ImageManager.getOperationResultsIcon(OperationRequestStatus.INPROGRESS));
statusIcons.put(OperationRequestStatus.CANCELED.name(),
ImageManager.getOperationResultsIcon(OperationRequestStatus.CANCELED));
statusIcons.put(OperationRequestStatus.FAILURE.name(),
ImageManager.getOperationResultsIcon(OperationRequestStatus.FAILURE));
priorityFilter.setValueMap(stati);
priorityFilter.setValueIcons(statusIcons);
//reload current settings if they exist, otherwise enable all.
String currentValue = portletConfig
.getSimpleValue(Constant.OPERATION_STATUS, Constant.OPERATION_STATUS_DEFAULT);
if (currentValue.isEmpty() || currentValue.split(",").length == OperationRequestStatus.values().length) {
priorityFilter.setValues(OperationRequestStatus.SUCCESS.name(), OperationRequestStatus.INPROGRESS.name(),
OperationRequestStatus.CANCELED.name(), OperationRequestStatus.FAILURE.name());
} else {
//spinder:3/4/11 doing this nonsense due to some weird smartgwt issue with SelectItem in VLayout.
if (currentValue.equalsIgnoreCase(OperationRequestStatus.SUCCESS.name())) {
priorityFilter.setValues(OperationRequestStatus.SUCCESS.name());
} else if (currentValue.equalsIgnoreCase("SUCCESS,INPROGRESS,CANCELED,FAILURE")) {
priorityFilter.setValues(OperationRequestStatus.SUCCESS.name(),
OperationRequestStatus.INPROGRESS.name(), OperationRequestStatus.CANCELED.name(),
OperationRequestStatus.FAILURE.name());
} else if (currentValue.equalsIgnoreCase("SUCCESS,INPROGRESS,CANCELED")) {
priorityFilter.setValues(OperationRequestStatus.SUCCESS.name(),
OperationRequestStatus.INPROGRESS.name(), OperationRequestStatus.CANCELED.name());
} else if (currentValue.equalsIgnoreCase("SUCCESS,INPROGRESS,FAILURE")) {
priorityFilter.setValues(OperationRequestStatus.SUCCESS.name(),
OperationRequestStatus.INPROGRESS.name(), OperationRequestStatus.FAILURE.name());
} else if (currentValue.equalsIgnoreCase("SUCCESS,INPROGRESS")) {
priorityFilter.setValues(OperationRequestStatus.SUCCESS.name(),
OperationRequestStatus.INPROGRESS.name());
} else if (currentValue.equalsIgnoreCase("SUCCESS,CANCELED,FAILURE")) {
priorityFilter.setValues(OperationRequestStatus.SUCCESS.name(), OperationRequestStatus.CANCELED.name(),
OperationRequestStatus.FAILURE.name());
} else if (currentValue.equalsIgnoreCase("SUCCESS,CANCELED")) {
priorityFilter.setValues(OperationRequestStatus.SUCCESS.name(), OperationRequestStatus.CANCELED.name());
} else if (currentValue.equalsIgnoreCase("SUCCESS,FAILURE")) {
priorityFilter.setValues(OperationRequestStatus.SUCCESS.name(), OperationRequestStatus.FAILURE.name());
} else if (currentValue.equalsIgnoreCase("INPROGRESS")) {
priorityFilter.setValues(OperationRequestStatus.INPROGRESS.name());
} else if (currentValue.equalsIgnoreCase("INPROGRESS,CANCELED,FAILURE")) {
priorityFilter.setValues(OperationRequestStatus.INPROGRESS.name(),
OperationRequestStatus.CANCELED.name(), OperationRequestStatus.FAILURE.name());
} else if (currentValue.equalsIgnoreCase("INPROGRESS,CANCELED")) {
priorityFilter.setValues(OperationRequestStatus.INPROGRESS.name(),
OperationRequestStatus.CANCELED.name());
} else if (currentValue.equalsIgnoreCase("INPROGRESS,FAILURE")) {
priorityFilter.setValues(OperationRequestStatus.INPROGRESS.name(),
OperationRequestStatus.FAILURE.name());
} else if (currentValue.equalsIgnoreCase("CANCELED")) {
priorityFilter.setValues(OperationRequestStatus.CANCELED.name());
} else if (currentValue.equalsIgnoreCase("CANCELED,FAILURE")) {
priorityFilter.setValues(OperationRequestStatus.CANCELED.name(), OperationRequestStatus.FAILURE.name());
} else if (currentValue.equalsIgnoreCase("FAILURE")) {
priorityFilter.setValues(OperationRequestStatus.FAILURE.name());
}
}
return priorityFilter;
}