public ControllerServiceSchema(Map map) { super(map, "Controller Service(id: {id}, name: {name})"); String wrapperName = getWrapperName(); serviceClass = getRequiredKeyAsType(map, TYPE_KEY, String.class, wrapperName); properties = getOptionalKeyAsType(map, PROPERTIES_KEY, Map.class, wrapperName, DEFAULT_PROPERTIES); annotationData = getOptionalKeyAsType(map, ANNOTATION_DATA_KEY, String.class, wrapperName, ""); }
protected static void addControllerService(final Element element, ControllerServiceSchema controllerServiceSchema) throws ConfigurationChangeException { try { final Element serviceElement = element.getOwnerDocument().createElement("controllerService"); addTextElement(serviceElement, "id", controllerServiceSchema.getId()); addTextElement(serviceElement, "name", controllerServiceSchema.getName()); addTextElement(serviceElement, "comment", ""); addTextElement(serviceElement, "class", controllerServiceSchema.getServiceClass()); addTextElement(serviceElement, "enabled", "true"); Map<String, Object> attributes = controllerServiceSchema.getProperties(); addConfiguration(serviceElement, attributes); String annotationData = controllerServiceSchema.getAnnotationData(); if(annotationData != null && !annotationData.isEmpty()) { addTextElement(element, "annotationData", annotationData); } element.appendChild(serviceElement); } catch (Exception e) { throw new ConfigurationChangeException("Failed to parse the config YAML while trying to create an SSL Controller Service", e); } }
@Override public ControllerServiceSchema apply(ControllerServiceDTO controllerServiceDTO) { Map<String, Object> map = new HashMap<>(); map.put(NAME_KEY, controllerServiceDTO.getName()); map.put(ID_KEY, controllerServiceDTO.getId()); map.put(TYPE_KEY, controllerServiceDTO.getType()); map.put(PROPERTIES_KEY, new HashMap<>(nullToEmpty(controllerServiceDTO.getProperties()))); String annotationData = controllerServiceDTO.getAnnotationData(); if(annotationData != null && !annotationData.isEmpty()) { map.put(ANNOTATION_DATA_KEY, annotationData); } return new ControllerServiceSchema(map); } }
@Override public ControllerServiceSchema apply(final VersionedControllerService versionedControllerService) { Map<String, Object> map = new HashMap<>(); map.put(NAME_KEY, versionedControllerService.getName()); map.put(ID_KEY, versionedControllerService.getIdentifier()); map.put(TYPE_KEY, versionedControllerService.getType()); map.put(PROPERTIES_KEY, new HashMap<>(nullToEmpty(versionedControllerService.getProperties()))); String annotationData = versionedControllerService.getAnnotationData(); if(annotationData != null && !annotationData.isEmpty()) { map.put(ANNOTATION_DATA_KEY, annotationData); } return new ControllerServiceSchema(map); } }
@Override public ControllerServiceSchema apply(final VersionedControllerService versionedControllerService) { Map<String, Object> map = new HashMap<>(); map.put(NAME_KEY, versionedControllerService.getName()); map.put(ID_KEY, versionedControllerService.getIdentifier()); map.put(TYPE_KEY, versionedControllerService.getType()); map.put(PROPERTIES_KEY, new HashMap<>(nullToEmpty(versionedControllerService.getProperties()))); String annotationData = versionedControllerService.getAnnotationData(); if(annotationData != null && !annotationData.isEmpty()) { map.put(ANNOTATION_DATA_KEY, annotationData); } return new ControllerServiceSchema(map); } }
@Override public ControllerServiceSchema apply(ControllerServiceDTO controllerServiceDTO) { Map<String, Object> map = new HashMap<>(); map.put(NAME_KEY, controllerServiceDTO.getName()); map.put(ID_KEY, controllerServiceDTO.getId()); map.put(TYPE_KEY, controllerServiceDTO.getType()); map.put(PROPERTIES_KEY, new HashMap<>(nullToEmpty(controllerServiceDTO.getProperties()))); String annotationData = controllerServiceDTO.getAnnotationData(); if(annotationData != null && !annotationData.isEmpty()) { map.put(ANNOTATION_DATA_KEY, annotationData); } return new ControllerServiceSchema(map); } }