private List<ConnConfProperty> filterProperties(final Collection<ConnConfProperty> properties) { List<ConnConfProperty> newProperties = new ArrayList<>(); properties.stream().map(property -> { ConnConfProperty prop = new ConnConfProperty(); prop.setSchema(property.getSchema()); prop.setOverridable(property.isOverridable()); final List<Object> parsed = new ArrayList<>(); if (property.getValues() != null) { property.getValues().stream(). filter(obj -> (obj != null && !obj.toString().isEmpty())). forEachOrdered((obj) -> { parsed.add(obj); }); } prop.getValues().addAll(parsed); return prop; }).forEachOrdered(prop -> { newProperties.add(prop); }); return newProperties; }
private String getCipherAlgorithm(final ConnInstance connInstance) { Optional<ConnConfProperty> cipherAlgorithm = connInstance.getConf().stream(). filter(property -> "cipherAlgorithm".equals(property.getSchema().getName()) && property.getValues() != null && !property.getValues().isEmpty()).findFirst(); return cipherAlgorithm.isPresent() ? (String) cipherAlgorithm.get().getValues().get(0) : CLEARTEXT; }
if (prop.isOverridable()) { overridable.put(prop.getSchema().getName(), prop); } else { conf.add(prop); filter(prop -> overridable.containsKey(prop.getSchema().getName()) && !prop.getValues().isEmpty()). forEach(prop -> { conf.add(prop); overridable.remove(prop.getSchema().getName()); });
filter(property -> (property.isOverridable())). forEachOrdered(property -> { props.add(property); Map<String, ConnConfProperty> valuedProps = new HashMap<>(); resourceTO.getConfOverride().forEach(prop -> { valuedProps.put(prop.getSchema().getName(), prop); }); if (valuedProps.containsKey(props.get(i).getSchema().getName())) { props.set(i, valuedProps.get(props.get(i).getSchema().getName()));
property = Optional.of(new ConnConfProperty()); connInstanceTO.getConf().add(property.get()); property.get().setSchema(schema); }); Collections.sort(connInstanceTO.getConf());
@Override protected List<ConnConfProperty> load() { List<ConnConfProperty> properties = getConnProperties(ConnectorConfPanel.this.modelObject); ConnectorConfPanel.this.modelObject.getConf().clear(); // re-order properties Collections.sort(properties, (o1, o2) -> { if (o1 == null) { return -1; } else { return o1.compareTo(o2); } }); ConnectorConfPanel.this.modelObject.getConf().addAll(properties); return properties; } };
private String getCipherAlgorithm(final ConnInstance connInstance) { Optional<ConnConfProperty> cipherAlgorithm = connInstance.getConf().stream(). filter(property -> "passwordHashAlgorithm".equals(property.getSchema().getName()) && property.getValues() != null && !property.getValues().isEmpty()).findFirst(); return cipherAlgorithm.isPresent() ? (String) cipherAlgorithm.get().getValues().get(0) : CLEARTEXT; }
/** * Get available configuration properties. * * @param instance connector instance. * @return configuration properties. */ @Override protected final List<ConnConfProperty> getConnProperties(final ConnInstanceTO instance) { return ConnectorWizardBuilder.getBundle(instance, bundles).getProperties().stream(). map(key -> { ConnConfProperty property = new ConnConfProperty(); property.setSchema(key); instance.getConf(key.getName()).ifPresent(conf -> { if (conf.getValues() != null) { property.getValues().addAll(conf.getValues()); property.setOverridable(conf.isOverridable()); } }); if (property.getValues().isEmpty() && !key.getDefaultValues().isEmpty()) { property.getValues().addAll(key.getDefaultValues()); } return property; }).collect(Collectors.toList()); } }
private String getCipherAlgorithm(final ConnInstance connInstance) { Optional<ConnConfProperty> cipherAlgorithm = connInstance.getConf().stream(). filter(property -> "cipherAlgorithm".equals(property.getSchema().getName()) && property.getValues() != null && !property.getValues().isEmpty()).findFirst(); return cipherAlgorithm.isPresent() ? (String) cipherAlgorithm.get().getValues().get(0) : CLEARTEXT; }
@JsonIgnore public Optional<ConnConfProperty> getConf(final String schemaName) { return conf.stream().filter(property -> property.getSchema().getName().equals(schemaName)).findFirst(); }
/** * Allows easy subclassing for the ConnId AD connector bundle. * * @param connector A Connector instance to query for the groupMemberAttribute property name * @return the name of the attribute used to keep track of group memberships */ protected String getGroupMembershipAttrName(final Connector connector) { Optional<ConnConfProperty> groupMembership = connector.getConnInstance().getConf().stream(). filter(property -> "groupMemberAttribute".equals(property.getSchema().getName()) && !property.getValues().isEmpty()). findFirst(); return groupMembership.isPresent() ? (String) groupMembership.get().getValues().get(0) : "uniquemember"; }
@JsonIgnore public Optional<ConnConfProperty> getConf(final String schemaName) { return conf.stream().filter(property -> property.getSchema().getName().equals(schemaName)).findFirst(); }
/** * Allows easy subclassing for the ConnId AD connector bundle. * * @param connector A Connector instance to query for the groupMemberAttribute property name * @return the name of the attribute used to keep track of group memberships */ @Override protected String getGroupMembershipAttrName(final Connector connector) { Optional<ConnConfProperty> groupMembership = connector.getConnInstance().getConf().stream(). filter(property -> "groupMemberReferenceAttribute".equals(property.getSchema().getName()) && !property.getValues().isEmpty()). findFirst(); return groupMembership.isPresent() ? (String) groupMembership.get().getValues().get(0) : "member"; }
final String label = StringUtils.isBlank(property.getSchema().getDisplayName()) ? property.getSchema().getName() : property.getSchema().getDisplayName(); if (property.getSchema().isConfidential() || Constants.GUARDED_STRING.equalsIgnoreCase(property.getSchema().getType()) || Constants.GUARDED_BYTE_ARRAY.equalsIgnoreCase(property.getSchema().getType())) { required = property.getSchema().isRequired(); } else { Class<?> propertySchemaClass; try { propertySchemaClass = ClassUtils.getClass(property.getSchema().getType()); if (ClassUtils.isPrimitiveOrWrapper(propertySchemaClass)) { propertySchemaClass = org.apache.commons.lang3.ClassUtils.primitiveToWrapper(propertySchemaClass); Class<Number> numberClass = (Class<Number>) propertySchemaClass; field = new AjaxSpinnerFieldPanel.Builder<>().build("panel", label, numberClass, new Model<>()); required = property.getSchema().isRequired(); } else if (ClassUtils.isAssignable(Boolean.class, propertySchemaClass)) { field = new AjaxCheckBoxPanel("panel", label, new Model<>()); } else { field = new AjaxTextFieldPanel("panel", label, new Model<>()); required = property.getSchema().isRequired(); field.setTitle(property.getSchema().getHelpMessage(), true); fieldPanel = multiFieldPanel; } else { setNewFieldModel(field, property.getValues());