@Override protected void onConfiguration(ConfigurationDeclaration config) { final StereotypeModel defaultStereotype = createStereotype(config.getName(), CONFIG); config.withStereotype(defaultStereotype); componentConfigs = populateComponentConfigsMap(config); }
private Optional<ConfigurationDeclaration> findMatchingConfiguration(ExtensionDeclaration declaration, TypeElement element) { List<ConfigurationDeclaration> configurations = declaration.getConfigurations(); if (configurations.size() == 1) { return Optional.of(configurations.get(0)); } return configurations.stream() .filter(config -> { Configuration configurationAnnotation = element.getAnnotation(Configuration.class); String name = config.getName(); String annotationName = configurationAnnotation != null ? configurationAnnotation.name() : ""; String defaultNaming = hyphenize(element.getSimpleName().toString()); return name.equals(defaultNaming) || name.equals(annotationName) || name.equals(DEFAULT_CONFIG_NAME); }) .findAny(); } }
@Override protected void onConfiguration(ConfigurationDeclaration config) { final StereotypeModel defaultStereotype = createStereotype(config.getName(), CONFIG); ifPresent(config.getModelProperty(ExtensionTypeDescriptorModelProperty.class) .map(ExtensionTypeDescriptorModelProperty::getType), type -> resolveStereotype(type, config, defaultStereotype), () -> config.withStereotype(defaultStereotype)); componentConfigs = populateComponentConfigsMap(config); }
private ConfigurationDeclaration findConfigByName(ExtensionDeclaration declaration, String name) { return declaration.getConfigurations().stream().filter(c -> c.getName().equals(name)).findAny().get(); }
private void assertOperation(String configName, String operationName) { ConfigurationDeclaration config = extensionDeclaration.getConfigurations().stream().filter(c -> c.getName().equals(configName)).findFirst() .orElseThrow(() -> new IllegalArgumentException("No config with name " + configName)); OperationDeclaration operation = config.getOperations().stream().filter(model -> model.getName().equals(operationName)) .findFirst().orElseThrow(() -> new IllegalArgumentException("No operation with name " + operationName)); assertThat(operation.getName(), is(operationName)); } }
protected ConfigurationDeclaration getConfiguration(ExtensionDeclaration extensionDeclaration, final String configurationName) { return (ConfigurationDeclaration) find(extensionDeclaration.getConfigurations(), object -> ((ConfigurationDeclaration) object).getName().equals(configurationName)); }
@Test public void heisenbergPointerPlusExternalConfig() { setLoader(loaderFor(HeisenbergPointerPlusExternalConfig.class)); ExtensionDeclaration extensionDeclaration = declareExtension().getDeclaration(); assertExtensionProperties(extensionDeclaration, OTHER_HEISENBERG); assertThat(extensionDeclaration.getConfigurations().size(), equalTo(2)); ConfigurationDeclaration configuration = extensionDeclaration.getConfigurations().get(1); assertThat(configuration, is(notNullValue())); assertThat(configuration.getName(), equalTo(EXTENDED_CONFIG_NAME)); assertThat(configuration.getAllParameters(), hasSize(32)); assertParameter(configuration.getAllParameters(), "extendedProperty", "", STRING_TYPE, true, SUPPORTED, null); }
private Optional<ConfigurationDeclaration> findMatchingConfiguration(ExtensionDeclaration declaration, TypeElement element) { List<ConfigurationDeclaration> configurations = declaration.getConfigurations(); if (configurations.size() == 1) { return Optional.of(configurations.get(0)); } return configurations.stream() .filter(config -> { Configuration configurationAnnotation = element.getAnnotation(Configuration.class); String name = config.getName(); String annotationName = configurationAnnotation != null ? configurationAnnotation.name() : ""; String defaultNaming = hyphenize(element.getSimpleName().toString()); return name.equals(defaultNaming) || name.equals(annotationName) || name.equals(DEFAULT_CONFIG_NAME); }) .findAny(); } }
private void assertTestModuleConfiguration(ExtensionDeclaration extensionDeclaration) throws Exception { assertThat(extensionDeclaration.getConfigurations(), hasSize(1)); ConfigurationDeclaration conf = extensionDeclaration.getConfigurations().get(0); assertThat(conf.getName(), equalTo(DEFAULT_CONFIG_NAME));
@Override protected void onConfiguration(ConfigurationDeclaration declaration) { final StereotypeModel defaultConfigStereotype = newStereotype(declaration.getName(), namespace) .withParent(CONFIG).build(); ifPresent( declaration.getModelProperty(ExtensionTypeDescriptorModelProperty.class) .map(ExtensionTypeDescriptorModelProperty::getType), type -> new ClassStereotypeResolver(type, declaration, namespace, defaultConfigStereotype, stereotypes).resolveStereotype(), () -> declaration.withStereotype(defaultConfigStereotype)); }