Package org.sonatype.configuration.validation

Examples of org.sonatype.configuration.validation.ValidationResponse


    return response;
  }

  public ValidationResponse validateModel(ValidationRequest<CLdapConfiguration> validationRequest) {
    ValidationResponse response = new ValidationResponse();

    for (CLdapServerConfiguration ldapServer : validationRequest.getConfiguration().getServers()) {
      response.append(this.validateLdapServerConfiguration(ldapServer, false));
    }

    return response;
  }
View Full Code Here


    return response;
  }

  public ValidationResponse validateConnectionInfo(ValidationContext ctx, CConnectionInfo connectionInfo) {
    ValidationResponse response = new ValidationResponse();

    if (StringUtils.isEmpty(connectionInfo.getHost())) {
      ValidationMessage msg = new ValidationMessage("host", "Host cannot be empty.");
      response.addValidationError(msg);
    }
    if (StringUtils.isEmpty(connectionInfo.getAuthScheme())) {
      ValidationMessage msg = new ValidationMessage("authScheme", "Authorization Scheme cannot be empty.");
      response.addValidationError(msg);
    }
    if (StringUtils.isEmpty(connectionInfo.getProtocol())) {
      ValidationMessage msg = new ValidationMessage("protocol", "Protocol cannot be empty.");
      response.addValidationError(msg);
    }
    if (StringUtils.isEmpty(connectionInfo.getSearchBase())) {
      ValidationMessage msg = new ValidationMessage("searchBase", "Search Base cannot be empty.");
      response.addValidationError(msg);
    }
    if (connectionInfo.getPort() < 1) {
      ValidationMessage msg = new ValidationMessage("port", "Port cannot be empty.");
      response.addValidationError(msg);
    }

    if (StringUtils.isNotEmpty(connectionInfo.getAuthScheme())
        && !connectionInfo.getAuthScheme().toLowerCase().equals("none")) {

      // user and pass required if authScheme != none
      if (StringUtils.isEmpty(connectionInfo.getSystemUsername())) {
        ValidationMessage msg = new ValidationMessage(
            "systemUsername",
            "Username cannot be empty unless the 'Authorization Scheme' is 'Anonymous Authentication'.");
        response.addValidationError(msg);
      }

      if (StringUtils.isEmpty(connectionInfo.getSystemPassword())) {
        ValidationMessage msg = new ValidationMessage(
            "systemPassword",
            "Password cannot be empty unless the 'Authorization Scheme' is 'Anonymous Authentication'.");
        response.addValidationError(msg);
      }
    }

    return response;
  }
View Full Code Here

  }

  private ValidationResponse validateUserAndGroupAuthConfiguration(ValidationContext ctx,
                                                                   CUserAndGroupAuthConfiguration userAndGroupAuthConf)
  {
    ValidationResponse response = new ValidationResponse();

    if (StringUtils.isEmpty(userAndGroupAuthConf.getUserIdAttribute())) {
      ValidationMessage msg = new ValidationMessage("userIdAttribute", "User ID Attribute cannot be empty.");
      response.addValidationError(msg);
    }
    if (StringUtils.isEmpty(userAndGroupAuthConf.getUserObjectClass())) {
      ValidationMessage msg = new ValidationMessage("userObjectClass", "User Object Class cannot be empty.");
      response.addValidationError(msg);
    }
    if (StringUtils.isEmpty(userAndGroupAuthConf.getUserRealNameAttribute())) {
      ValidationMessage msg = new ValidationMessage(
          "userRealNameAttribute",
          "User Real Name Attribute cannot be empty.");
      response.addValidationError(msg);
    }
    if (StringUtils.isEmpty(userAndGroupAuthConf.getEmailAddressAttribute())) {
      ValidationMessage msg = new ValidationMessage(
          "emailAddressAttribute",
          "Email Address Attribute cannot be empty.");
      response.addValidationError(msg);
    }

    if (userAndGroupAuthConf.isLdapGroupsAsRoles()
        && StringUtils.isEmpty(userAndGroupAuthConf.getUserMemberOfAttribute())) {
      if (StringUtils.isEmpty(userAndGroupAuthConf.getGroupIdAttribute())) {
        ValidationMessage msg = new ValidationMessage(
            "groupIdAttribute",
            "Group ID Attribute cannot be empty when Use LDAP Groups as Roles is true.");
        response.addValidationError(msg);
      }
      if (StringUtils.isEmpty(userAndGroupAuthConf.getGroupMemberAttribute())) {
        ValidationMessage msg = new ValidationMessage(
            "groupMemberAttribute",
            "Group Member Attribute cannot be empty when Use LDAP Groups as Roles is true.");
        response.addValidationError(msg);
      }
      if (StringUtils.isEmpty(userAndGroupAuthConf.getGroupMemberFormat())) {
        ValidationMessage msg = new ValidationMessage(
            "groupMemberFormat",
            "Group Member Format cannot be empty when Use LDAP Groups as Roles is true.");
        response.addValidationError(msg);
      }
      if (StringUtils.isEmpty(userAndGroupAuthConf.getGroupObjectClass())) {
        ValidationMessage msg = new ValidationMessage(
            "groupObjectClass",
            "Group Object Class cannot be empty when Use LDAP Groups as Roles is true.");
        response.addValidationError(msg);
      }
    }
    return response;
  }
View Full Code Here

  }

  public ValidationResponse validateLdapServerOrder(List<CLdapServerConfiguration> ldapServers,
                                                    List<String> proposedOrder)
  {
    ValidationResponse response = new ValidationResponse();

    // make sure all the Ids of the servers are the same
    List<String> actualServerIds = new ArrayList<String>();
    for (CLdapServerConfiguration ldapServerConfig : ldapServers) {
      actualServerIds.add(ldapServerConfig.getId());
    }

    if (proposedOrder.size() != actualServerIds.size() || !proposedOrder.containsAll(actualServerIds)) {
      ValidationMessage msg = new ValidationMessage(
          "*",
          "Invalid order, the propsed order contains different elements then the actual order: propsed: " +
              proposedOrder + ", actual: " + actualServerIds);
      response.addValidationError(msg);
    }

    return response;
  }
View Full Code Here

      ldapServer.setId(request.getResourceRef().getQueryAsForm().getFirstValue("ldapServerId"));
    }
    replaceFakePassword(ldapServer.getConnectionInfo(), ldapServer.getId(), ldapConfigurationManager);

    // validate it
    ValidationResponse validationResponse = this.configurationValidator.validateLdapServerConfiguration(
        ldapServer,
        false);
    // if the info is not valid throw
    if (!validationResponse.isValid()) {
      throw new InvalidConfigurationException(validationResponse);
    }

    // its valid, now we need to deal with getting the users
    LdapUserListResponse result = new LdapUserListResponse();
View Full Code Here

    }
  }

  @Override
  public ValidationResponse validatePrivilege(CPrivilege privilege, SecurityValidationContext ctx, boolean update) {
    ValidationResponse response = super.validatePrivilege(privilege, ctx, update);

    if (!TYPE.equals(privilege.getType())) {
      return response;
    }

    // validate method
    // method is of form ('*' | 'read' | 'create' | 'update' | 'delete' [, method]* )
    // so, 'read' method is correct, but so is also 'create,update,delete'
    // '*' means ALL POSSIBLE value for this "field"
    String method = null;
    String repositoryId = null;
    String repositoryTargetId = null;
    String repositoryGroupId = null;

    for (CProperty property : (List<CProperty>) privilege.getProperties()) {
      if (property.getKey().equals(ApplicationPrivilegeMethodPropertyDescriptor.ID)) {
        method = property.getValue();
      }
      else if (property.getKey().equals(TargetPrivilegeRepositoryPropertyDescriptor.ID)) {
        repositoryId = property.getValue();
      }
      else if (property.getKey().equals(TargetPrivilegeRepositoryTargetPropertyDescriptor.ID)) {
        repositoryTargetId = property.getValue();
      }
      else if (property.getKey().equals(TargetPrivilegeGroupPropertyDescriptor.ID)) {
        repositoryGroupId = property.getValue();
      }
    }

    if (StringUtils.isEmpty(repositoryTargetId)) {
      ValidationMessage message = new ValidationMessage("repositoryTargetId", "Privilege ID '"
          + privilege.getId() + "' requires a repositoryTargetId.", "Repository Target is required.");
      response.addValidationError(message);
    }

    if (!StringUtils.isEmpty(repositoryId) && !StringUtils.isEmpty(repositoryGroupId)) {
      ValidationMessage message = new ValidationMessage(
          "repositoryId",
          "Privilege ID '"
              + privilege.getId()
              + "' cannot be assigned to both a group and repository."
              + "  Either assign a group, a repository or neither (which assigns to ALL repositories).",
          "Cannot select both a Repository and Repository Group.");
      response.addValidationError(message);
    }

    if (StringUtils.isEmpty(method)) {
      response.addValidationError("Method cannot be empty on a privilege!");
    }
    else {
      String[] methods = null;

      if (method.contains(",")) {
        // it is a list of methods
        methods = method.split(",");
      }
      else {
        // it is a single method
        methods = new String[]{method};
      }

      boolean valid = true;

      for (String singlemethod : methods) {
        if (!"create".equals(singlemethod) && !"delete".equals(singlemethod)
            && !"read".equals(singlemethod) && !"update".equals(singlemethod)
            && !"*".equals(singlemethod)) {
          valid = false;

          break;
        }
      }

      if (!valid) {
        ValidationMessage message = new ValidationMessage(
            "method",
            "Privilege ID '" + privilege.getId()
                + "' Method is wrong! (Allowed methods are: create, delete, read and update)",
            "Invalid method selected.");
        response.addValidationError(message);
      }

    }

    return response;
View Full Code Here

  }

  public void setAnonymousPassword(String anonymousPassword)
      throws InvalidConfigurationException
  {
    ValidationResponse vr = validator.validateAnonymousPassword(this.initializeContext(), anonymousPassword);

    if (vr.isValid()) {
      this.getConfiguration().setAnonymousPassword(anonymousPassword);
    }
    else {
      throw new InvalidConfigurationException(vr);
    }
View Full Code Here

  }

  public void setAnonymousUsername(String anonymousUsername)
      throws InvalidConfigurationException
  {
    ValidationResponse vr = validator.validateAnonymousUsername(this.initializeContext(), anonymousUsername);

    if (vr.isValid()) {
      this.getConfiguration().setAnonymousUsername(anonymousUsername);
    }
    else {
      throw new InvalidConfigurationException(vr);
    }
View Full Code Here

  }

  public void setRealms(List<String> realms)
      throws InvalidConfigurationException
  {
    ValidationResponse vr = validator.validateRealms(this.initializeContext(), realms);

    if (vr.isValid()) {
      this.getConfiguration().setRealms(realms);
    }
    else {
      throw new InvalidConfigurationException(vr);
    }
View Full Code Here

    return buildPermission(NexusItemAuthorizer.VIEW_REPOSITORY_KEY, repoId);
  }

  @Override
  public ValidationResponse validatePrivilege(CPrivilege privilege, SecurityValidationContext ctx, boolean update) {
    ValidationResponse response = super.validatePrivilege(privilege, ctx, update);

    if (!TYPE.equals(privilege.getType())) {
      return response;
    }
View Full Code Here

TOP

Related Classes of org.sonatype.configuration.validation.ValidationResponse

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.