public JsonActionResult importMetadata()

in saml-authentication-server/src/main/java/jetbrains/buildServer/auth/saml/plugin/SamlSettingsJsonController.java [51:81]


    public JsonActionResult<SamlPluginSettings> importMetadata(HttpServletRequest request) {
        if (!permissionsManager.canWriteSettings(request)) {
            return JsonActionResult.forbidden();
        }

        try {

            var metadataImport = bindFromRequest(request, MetadataImport.class);

            if (metadataImport == null) {
                throw new Exception("Invalid request");
            }

            var metadataXml = metadataImport.getMetadataXml();

            var getSettingsResult = this.getSettings(request);

            if (getSettingsResult.getErrors() != null) {
                return JsonActionResult.fail(getSettingsResult.getErrors());
            }

            var result = getSettingsResult.getResult();
            SamlPluginSettings settings = result.getSettings();

            this.samlAuthenticationScheme.importMetadataIntoSettings(metadataXml, settings);
            return JsonActionResult.ok(settings);
        } catch (Exception e) {
            log.error(e.getMessage(), e);
            return JsonActionResult.fail(e);
        }
    }