@Override protected void onConnectionProvider(ConnectedDeclaration owner, ConnectionProviderDeclaration declaration) { final StereotypeModel defaultStereotype = createStereotype(declaration.getName(), CONNECTION); declaration.withStereotype(defaultStereotype); }
private Optional<ConnectionProviderDeclaration> findMatchingProvider(ConnectedDeclaration<?> declaration, Element element) { Optional<String> alias = getAlias(element); String defaultNaming = hyphenize(element.getSimpleName().toString().replace("Provider", "")); return declaration.getConnectionProviders().stream() .filter(provider -> { String name = provider.getName(); if (alias.isPresent()) { return name.equals(alias.get()); } else { return name.equals(defaultNaming) || name.equals(DEFAULT_CONNECTION_PROVIDER_NAME); } }) .findAny(); }
private void validateExpressionSupport(ConnectionProviderDeclaration provider, ParameterDeclaration parameter, Field field) { Expression expression = field.getAnnotation(Expression.class); if (expression != null && expression.value() != NOT_SUPPORTED) { throw new IllegalConnectionProviderModelDefinitionException( format( "Parameter '%s' in Connection Provider '%s' is marked as supporting expressions. Expressions are not supported " + "in OAuth parameters", parameter.getName(), provider.getName())); } }
@Override protected void onConnectionProvider(ConnectedDeclaration owner, ConnectionProviderDeclaration declaration) { final StereotypeModel defaultStereotype = createStereotype(declaration.getName(), CONNECTION); ifPresent(declaration.getModelProperty(ExtensionTypeDescriptorModelProperty.class) .map(ExtensionTypeDescriptorModelProperty::getType), type -> resolveStereotype(type, declaration, defaultStereotype), () -> declaration.withStereotype(defaultStereotype)); }
private ConnectionProviderDeclaration findProviderByName(ConnectedDeclaration<?> declaration, String name) { return declaration.getConnectionProviders().stream().filter(c -> c.getName().equals(name)).findAny().get(); }
private void assertTestModuleConnectionProviders(ExtensionDeclaration extensionDeclaration) throws Exception { assertThat(extensionDeclaration.getConnectionProviders(), hasSize(2)); ConnectionProviderDeclaration connectionProvider = extensionDeclaration.getConnectionProviders().get(0); assertThat(connectionProvider.getName(), is(DEFAULT_CONNECTION_PROVIDER_NAME)); List<ParameterDeclaration> parameters = connectionProvider.getAllParameters(); assertThat(parameters, hasSize(3)); assertParameter(parameters, "saulPhoneNumber", "", STRING_TYPE, false, SUPPORTED, SAUL_OFFICE_NUMBER); ImplementingTypeModelProperty typeModelProperty = connectionProvider.getModelProperty(ImplementingTypeModelProperty.class).get(); assertThat(typeModelProperty.getType(), equalTo(HeisenbergConnectionProvider.class)); parameters = extensionDeclaration.getConnectionProviders().get(1).getAllParameters(); assertParameter(parameters, TLS_PARAMETER_NAME, "", toMetadataType(TlsContextFactory.class), true, NOT_SUPPORTED, null); }
private Optional<ConnectionProviderDeclaration> findMatchingProvider(ConnectedDeclaration<?> declaration, Element element) { Optional<String> alias = getAlias(element); String defaultNaming = hyphenize(element.getSimpleName().toString().replace("Provider", "")); return declaration.getConnectionProviders().stream() .filter(provider -> { String name = provider.getName(); if (alias.isPresent()) { return name.equals(alias.get()); } else { return name.equals(defaultNaming) || name.equals(DEFAULT_CONNECTION_PROVIDER_NAME); } }) .findAny(); }
private void validateExpressionSupport(ConnectionProviderDeclaration provider, ParameterDeclaration parameter, Field field) { Expression expression = field.getAnnotation(Expression.class); if (expression != null && expression.value() != NOT_SUPPORTED) { throw new IllegalConnectionProviderModelDefinitionException( format( "Parameter '%s' in Connection Provider '%s' is marked as supporting expressions. Expressions are not supported " + "in OAuth parameters", parameter.getName(), provider.getName())); } }
@Override protected void onConnectionProvider(ConnectedDeclaration owner, ConnectionProviderDeclaration declaration) { final StereotypeModel defaultConnectionStereotype = newStereotype(declaration.getName(), namespace) .withParent(CONNECTION).build(); ifPresent( declaration.getModelProperty(ExtensionTypeDescriptorModelProperty.class) .map(ExtensionTypeDescriptorModelProperty::getType), type -> new ClassStereotypeResolver(type, declaration, namespace, defaultConnectionStereotype, stereotypes).resolveStereotype(), () -> declaration.withStereotype(defaultConnectionStereotype)); }