private static ComponentUISpecification getCustomProcessorUISpecification (ComponentUISpecification componentUISpecification) { ComponentUISpecification result = new ComponentUISpecification(); List<ComponentUISpecification.UIField> fields = new ArrayList<>(); for (ComponentUISpecification.UIField uiField: componentUISpecification.getFields()) { if (uiField.getFieldName().startsWith(TopologyLayoutConstants.JSON_KEY_CUSTOM_PROCESSOR_PREFIX)) { ComponentUISpecification.UIField newUIField = new ComponentUISpecification.UIField(uiField); newUIField.setFieldName(uiField.getFieldName().replaceFirst(TopologyLayoutConstants.JSON_KEY_CUSTOM_PROCESSOR_PREFIX_REGEX, "")); fields.add(newUIField); } } result.setFields(fields); return (result.getFields().isEmpty() ? null : result); }
private List<ComponentUISpecification.UIField> getCustomProcessorUIFieldsWithPrefix () { List<ComponentUISpecification.UIField> result = new ArrayList<>(); if (topologyComponentUISpecification != null) { for (ComponentUISpecification.UIField uiField : this.topologyComponentUISpecification.getFields()) { ComponentUISpecification.UIField newUIField = new ComponentUISpecification.UIField(uiField); newUIField.setFieldName(TopologyLayoutConstants.JSON_KEY_CUSTOM_PROCESSOR_PREFIX + uiField.getFieldName()); result.add(newUIField); } } return result; }
private ComponentUISpecification.UIField createUIField (String fieldName, String uiName, boolean isOptional, boolean isUserInput, String tooltip, ComponentUISpecification.UIFieldType type, Object defaultValue) { ComponentUISpecification.UIField uiField = new ComponentUISpecification.UIField(); uiField.setFieldName(fieldName); uiField.setUiName(uiName); uiField.setIsOptional(isOptional); uiField.setIsUserInput(isUserInput); uiField.setTooltip(tooltip); uiField.setType(type); uiField.setDefaultValue(defaultValue); return uiField; } }