String type = labels.getLabel(UNKNOWN); if (securityDefinitions != null && securityDefinitions.containsKey(securityKey)) { type = securityDefinitions.get(securityKey).getType();
@Override public MarkupDocBuilder apply(MarkupDocBuilder markupDocBuilder, Parameters params) { String securitySchemeDefinitionName = params.securitySchemeDefinitionName; SecuritySchemeDefinition securitySchemeDefinition = params.securitySchemeDefinition; applySecurityDocumentExtension(new SecurityDocumentExtension.Context(Position.SECURITY_SCHEME_BEFORE, markupDocBuilder, securitySchemeDefinitionName, securitySchemeDefinition)); markupDocBuilder.sectionTitleWithAnchorLevel(params.titleLevel, securitySchemeDefinitionName); applySecurityDocumentExtension(new SecurityDocumentExtension.Context(Position.SECURITY_SCHEME_BEGIN, markupDocBuilder, securitySchemeDefinitionName, securitySchemeDefinition)); String description = securitySchemeDefinition.getDescription(); if (isNotBlank(description)) { markupDocBuilder.paragraph(markupDescription(config.getSwaggerMarkupLanguage(), markupDocBuilder, description)); } buildSecurityScheme(markupDocBuilder, securitySchemeDefinition); applySecurityDocumentExtension(new SecurityDocumentExtension.Context(Position.SECURITY_SCHEME_END, markupDocBuilder, securitySchemeDefinitionName, securitySchemeDefinition)); applySecurityDocumentExtension(new SecurityDocumentExtension.Context(Position.SECURITY_SCHEME_AFTER, markupDocBuilder, securitySchemeDefinitionName, securitySchemeDefinition)); return markupDocBuilder; }
private SecurityScheme convert(SecuritySchemeDefinition definition) { SecurityScheme securityScheme; switch (definition.getType()) { case "basic": securityScheme = createBasicSecurityScheme(); break; case "apiKey": securityScheme = convertApiKeySecurityScheme(definition); break; case "oauth2": securityScheme = convertOauth2SecurityScheme(definition); break; default: securityScheme = new SecurityScheme(); } securityScheme.setDescription(definition.getDescription()); securityScheme.setExtensions(convert(definition.getVendorExtensions())); return securityScheme; }
if (securitySchema.getType().equalsIgnoreCase("oauth2")) { OAuth2Definition oauthSchema = (OAuth2Definition) securitySchema; AuthProvider.Builder authProviderBuilder = AuthProvider.newBuilder(); VendorExtensionUtils.usedExtension( diagCollector, securitySchema.getVendorExtensions(), ExtensionNames.OAUTH_ISSUER_SWAGGER_EXTENSION, ExtensionNames.OAUTH_ISSUER_SWAGGER_EXTENSION_LEGACY); String oauthIssuerSwaggerExtensionObject = VendorExtensionUtils.getExtensionValue( securitySchema.getVendorExtensions(), String.class, diagCollector, VendorExtensionUtils.usedExtension( diagCollector, securitySchema.getVendorExtensions(), ExtensionNames.JWKS_SWAGGER_EXTENSION, ExtensionNames.JWKS_SWAGGER_EXTENSION_LEGACY); String jwksSwaggerExtensionValue = VendorExtensionUtils.getExtensionValue( securitySchema.getVendorExtensions(), String.class, diagCollector, VendorExtensionUtils.usedExtension(
private static Optional<ConfigurationProperty> vendorExtension(final SecuritySchemeDefinition definition, final ConfigurationProperty template, final String name) { final Map<String, Object> vendorExtensions = definition.getVendorExtensions(); if (vendorExtensions == null) { return empty(); } final Object value = vendorExtensions.get(name); if (value == null) { return empty(); } final ConfigurationProperty property = new ConfigurationProperty.Builder().createFrom(template).defaultValue(String.valueOf(value)) .build(); return Optional.of(property); }
.in(in); String description = getString("description", node, false, location, result); output.setDescription(description); output.setDescription(desc.textValue()); JsonNode desc = node.get("description"); if(desc != null) { output.setDescription(desc.textValue()); for(String key : keys) { if(key.startsWith("x-")) { output.setVendorExtension(key, extension(node.get(key)));
private void setVendorExtensions(final Extensible rapidElement, final SecuritySchemeDefinition swaggerObj) { final Iterable<com.reprezen.rapidml.Extension> extensions = this._extensionsHelper.getRapidExtensions(rapidElement); final Consumer<com.reprezen.rapidml.Extension> _function = (com.reprezen.rapidml.Extension it) -> { swaggerObj.setVendorExtension(it.getName(), it.getValue()); }; extensions.forEach(_function); }
private SecurityScheme convert(SecuritySchemeDefinition definition) { SecurityScheme securityScheme; switch (definition.getType()) { case "basic": securityScheme = createBasicSecurityScheme(); break; case "apiKey": securityScheme = convertApiKeySecurityScheme(definition); break; case "oauth2": securityScheme = convertOauth2SecurityScheme(definition); break; default: securityScheme = new SecurityScheme(); } securityScheme.setDescription(definition.getDescription()); securityScheme.setExtensions(convert(definition.getVendorExtensions())); return securityScheme; }
if (securitySchema.getType().equalsIgnoreCase("oauth2")) { OAuth2Definition oauthSchema = (OAuth2Definition) securitySchema; AuthProvider.Builder authProviderBuilder = AuthProvider.newBuilder(); VendorExtensionUtils.usedExtension( diagCollector, securitySchema.getVendorExtensions(), ExtensionNames.OAUTH_ISSUER_SWAGGER_EXTENSION, ExtensionNames.OAUTH_ISSUER_SWAGGER_EXTENSION_LEGACY); String oauthIssuerSwaggerExtensionObject = VendorExtensionUtils.getExtensionValue( securitySchema.getVendorExtensions(), String.class, diagCollector, VendorExtensionUtils.usedExtension( diagCollector, securitySchema.getVendorExtensions(), ExtensionNames.JWKS_SWAGGER_EXTENSION, ExtensionNames.JWKS_SWAGGER_EXTENSION_LEGACY); String jwksSwaggerExtensionValue = VendorExtensionUtils.getExtensionValue( securitySchema.getVendorExtensions(), String.class, diagCollector, VendorExtensionUtils.usedExtension(
private static Optional<ConfigurationProperty> vendorExtension(final SecuritySchemeDefinition definition, final ConfigurationProperty template, final String name) { final Map<String, Object> vendorExtensions = definition.getVendorExtensions(); if (vendorExtensions == null) { return empty(); } final Object value = vendorExtensions.get(name); if (value == null) { return empty(); } final ConfigurationProperty property = new ConfigurationProperty.Builder().createFrom(template).defaultValue(String.valueOf(value)) .build(); return Optional.of(property); }
private MarkupDocBuilder buildSecurityScheme(MarkupDocBuilder markupDocBuilder, SecuritySchemeDefinition securityScheme) { String type = securityScheme.getType(); MarkupDocBuilder paragraphBuilder = copyMarkupDocBuilder(markupDocBuilder);
private SecurityScheme convert(SecuritySchemeDefinition definition) { SecurityScheme securityScheme; switch (definition.getType()) { case "basic": securityScheme = createBasicSecurityScheme(); break; case "apiKey": securityScheme = convertApiKeySecurityScheme(definition); break; case "oauth2": securityScheme = convertOauth2SecurityScheme(definition); break; default: securityScheme = new SecurityScheme(); } securityScheme.setDescription(definition.getDescription()); securityScheme.setExtensions(convert(definition.getVendorExtensions())); return securityScheme; }
return ((Tag) item).getVendorExtensions(); } else if (item instanceof SecuritySchemeDefinition) { return ((SecuritySchemeDefinition) item).getVendorExtensions(); } else { return null;
@Override public MarkupDocBuilder apply(MarkupDocBuilder markupDocBuilder, Parameters params) { String securitySchemeDefinitionName = params.securitySchemeDefinitionName; SecuritySchemeDefinition securitySchemeDefinition = params.securitySchemeDefinition; applySecurityDocumentExtension(new SecurityDocumentExtension.Context(Position.SECURITY_SCHEME_BEFORE, markupDocBuilder, securitySchemeDefinitionName, securitySchemeDefinition)); markupDocBuilder.sectionTitleWithAnchorLevel(params.titleLevel, securitySchemeDefinitionName); applySecurityDocumentExtension(new SecurityDocumentExtension.Context(Position.SECURITY_SCHEME_BEGIN, markupDocBuilder, securitySchemeDefinitionName, securitySchemeDefinition)); String description = securitySchemeDefinition.getDescription(); if (isNotBlank(description)) { markupDocBuilder.paragraph(markupDescription(config.getSwaggerMarkupLanguage(), markupDocBuilder, description)); } buildSecurityScheme(markupDocBuilder, securitySchemeDefinition); applySecurityDocumentExtension(new SecurityDocumentExtension.Context(Position.SECURITY_SCHEME_END, markupDocBuilder, securitySchemeDefinitionName, securitySchemeDefinition)); applySecurityDocumentExtension(new SecurityDocumentExtension.Context(Position.SECURITY_SCHEME_AFTER, markupDocBuilder, securitySchemeDefinitionName, securitySchemeDefinition)); return markupDocBuilder; }
private static String getOAuth2Name() { String name = null; Map<String, SecuritySchemeDefinition> defMap = swagger.getSecurityDefinitions(); if(defMap != null) { for(Map.Entry<String, SecuritySchemeDefinition> entry : defMap.entrySet()) { if(entry.getValue().getType().equals("oauth2")) { name = entry.getKey(); break; } } } return name; }
private Boolean isApiKeyRequired(Operation op) { Optional<Map.Entry<String, SecuritySchemeDefinition>> apiKeySecurityDefinition = Optional.empty(); if (swagger.getSecurityDefinitions() != null) { apiKeySecurityDefinition = swagger.getSecurityDefinitions().entrySet() .stream().filter(p -> p.getValue().getType().equals("apiKey")).findFirst(); } if (!apiKeySecurityDefinition.isPresent()) { return false; } String securityDefinitionName = apiKeySecurityDefinition.get().getKey(); if (op.getSecurity() != null) { return op.getSecurity().stream().anyMatch(s -> s.containsKey(securityDefinitionName)); } if (swagger.getSecurityRequirement() != null) { return swagger.getSecurityRequirement().stream().anyMatch(s -> s.getName().equals(securityDefinitionName)); } return false; }
/** * Check if all operations contains valid authentication types */ private SwaggerModelInfo validateAuthTypes(final SwaggerModelInfo swaggerModelInfo) { if (swaggerModelInfo.getModel() == null) { return swaggerModelInfo; } final SwaggerModelInfo.Builder withWarnings = new SwaggerModelInfo.Builder().createFrom(swaggerModelInfo); for (final Map.Entry<String, SecuritySchemeDefinition> definitionEntry : notNull( swaggerModelInfo.getModel().getSecurityDefinitions()).entrySet()) { final String authType = definitionEntry.getValue().getType(); if (!SUPPORTED_AUTH_TYPES.contains(authType)) { withWarnings.addWarning(new Violation.Builder()// .property("")// .error("unsupported-auth")// .message("Authentication type " + authType + " is currently not supported")// .build()); } } return withWarnings.build(); }
/** * Check if all operations contains valid authentication types */ private SwaggerModelInfo validateAuthTypes(final SwaggerModelInfo swaggerModelInfo) { if (swaggerModelInfo.getModel() == null) { return swaggerModelInfo; } final SwaggerModelInfo.Builder withWarnings = new SwaggerModelInfo.Builder().createFrom(swaggerModelInfo); for (final Map.Entry<String, SecuritySchemeDefinition> definitionEntry : notNull( swaggerModelInfo.getModel().getSecurityDefinitions()).entrySet()) { final String authType = definitionEntry.getValue().getType(); if (!SUPPORTED_AUTH_TYPES.contains(authType)) { withWarnings.addWarning(new Violation.Builder()// .property("")// .error("unsupported-auth")// .message("Authentication type " + authType + " is currently not supported")// .build()); } } return withWarnings.build(); }