public static List<AttributeDefinition> buildAttributesList(Class<?> theClass) { List<AttributeDefinition> attributes = new ArrayList<AttributeDefinition>(); try { BeanInfo beanInfo = Introspector.getBeanInfo(theClass); PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors(); for (PropertyDescriptor propertyDescriptor : propertyDescriptors) { if (propertyDescriptor.getWriteMethod() == null || !Modifier.isPublic(propertyDescriptor.getWriteMethod().getModifiers())) { continue; } Builder builder = AttributeDefinition.builder(new PassThroughStringLocalizer()).id(propertyDescriptor.getName()) .name(propertyDescriptor.getDisplayName()) .description(propertyDescriptor.getShortDescription()); addEnumValues(propertyDescriptor.getPropertyType(), builder); AttributeDefinition a = builder.build(); attributes.add(a); } } catch (IntrospectionException ex) { LOGGER.error("building attribute list failed", ex); } return attributes; }
@Override public ServiceDescriptor getDescriptor() { Builder builder = ServiceDescriptor.builder(strings); builder.id(this.id); builder.name("trac.name").description("trac.description"); builder.attribute( buildAttribute(builder, TicketHandlerFactory.ATTRIB_USERNAME, "username.outputMode", "username.outputMode.description")) .attribute( builder.newAttribute() .id(TicketHandlerFactory.ATTRIB_PASSWORD) .name("userPassword.outputMode") .description( "userPassword.outputMode.description") .defaultValue("").asPassword().build()) .attribute( builder.newAttribute() .id(TicketHandlerFactory.ATTRIB_SERVER) .name("serverUrl.outputMode") .description("serverUrl.outputMode.description") .defaultValue("").required().build()); return builder.build(); }
@Override public ServiceDescriptor getDescriptor() { Builder builder = ServiceDescriptor.builder(strings); builder.id(this.id); builder.name("service.name").description("service.description"); builder.attribute(builder.newAttribute().id(Constants.GITHUB_USER).name(Constants.GITHUB_USER_NAME) .description(Constants.GITHUB_USER_DESCRIPTION).build()); builder.attribute(builder.newAttribute().id(Constants.GITHUB_PWD).name(Constants.GITHUB_PWD_NAME) .description(Constants.GITHUB_PWD_DESCRIPTION).defaultValue("").asPassword().build()); builder.attribute(builder.newAttribute().id(Constants.GITHUB_REPO).name(Constants.GITHUB_REPO_NAME) .description(Constants.GITHUB_REPO_DESCRIPTION).defaultValue("").required().build()); builder.attribute(builder.newAttribute().id(Constants.GITHUB_REPO_OWNER).name(Constants.GITHUB_REPO_OWNER_NAME) .description(Constants.GITHUB_REPO_OWNER_DESCRIPTION).defaultValue("").required().build()); return builder.build(); }
@Override public ServiceDescriptor getDescriptor() { Builder builder = ServiceDescriptor.builder(strings); builder.id(this.id); builder.name("service.name").description("service.description"); builder.attribute(builder.newAttribute().id("repository").name("service.repository.name") .description("service.repository.description").build()); builder.attribute(builder.newAttribute().id("workspace").name("service.workspace.name") .description("service.workspace.description").build()); builder.attribute(builder.newAttribute().id("branch").name("service.branch.name") .description("service.branch.description").build()); builder.attribute(builder.newAttribute().id("submodulesHack").name("service.submodulesHack.name") .description("service.submodulesHack.description").asBoolean().build()); return builder.build(); } }
@Override public ServiceDescriptor getDescriptor() { Builder builder = ServiceDescriptor.builder(strings); builder.id("external-connector-proxy"); builder.name("proxy.name", "[proxy-name]"); builder.description("proxy.description"); builder.attribute(builder.newAttribute().id("portId").name("proxy.port.id") .description("proxy.port.description").build()); builder.attribute(builder.newAttribute().id("destination").name("proxy.destination.name") .description("proxy.destination.description").build()); builder.attribute(builder.newAttribute().id("serviceId").name("proxy.serviceId.name") .description("proxy.serviceId.description").build()); return builder.build(); }
@Override public ServiceDescriptor getDescriptor() { Builder builder = ServiceDescriptor.builder(strings); builder.id(this.id); builder.name("service.name").description("service.description"); builder.attribute(builder.newAttribute().id("projectPath").name("service.projectPath.name") .description("service.projectPath.description").required().build()); builder.attribute(builder.newAttribute().id("command").name("service.command.name") .description("service.command.description").required().build()); builder.attribute(builder.newAttribute().id("mvnVersion").name("service.mvnVersion.name") .description("service.mvnVersion.description").build()); return builder.build(); }
private AttributeDefinition buildAttribute(ServiceDescriptor.Builder builder, String id, String nameId, String descriptionId) { return builder.newAttribute().id(id).name(nameId) .description(descriptionId).defaultValue("").required().build(); } }
@Override public ServiceDescriptor getDescriptor() { Builder builder = ServiceDescriptor.builder(strings); builder.id("connector-composition"); builder.name("composite.name", "[proxy-name]"); builder.description("composite.description"); builder.attribute(builder.newAttribute().id("queryString").name("composite.queryString.id") .description("composite.queryString.description").build()); builder.attribute(builder.newAttribute().id("compositeStrategy").name("composite.strategy.id") .description("composite.strategy.description").build()); return builder.build(); }