All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.volcengine.iam20210801.model.AttachPolicyInProjectRequest Maven / Gradle / Ivy

There is a newer version: 0.1.129
Show newest version
/*
 * iam20210801
 * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
 *
 * OpenAPI spec version: common-version
 * 
 *
 * NOTE: This class is auto generated by the swagger code generator program.
 * https://github.com/swagger-api/swagger-codegen.git
 * Do not edit the class manually.
 */

package com.volcengine.iam20210801.model;

import java.util.Objects;
import java.util.Arrays;
import com.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import io.swagger.v3.oas.annotations.media.Schema;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.validation.constraints.*;
import javax.validation.Valid;
/**
 * AttachPolicyInProjectRequest
 */



public class AttachPolicyInProjectRequest {
  @SerializedName("PolicyName")
  private String policyName = null;

  /**
   * Gets or Sets policyType
   */
  @JsonAdapter(PolicyTypeEnum.Adapter.class)
  public enum PolicyTypeEnum {
    @SerializedName("System")
    SYSTEM("System"),
    @SerializedName("Custom")
    CUSTOM("Custom");

    private String value;

    PolicyTypeEnum(String value) {
      this.value = value;
    }
    public String getValue() {
      return value;
    }

    @Override
    public String toString() {
      return String.valueOf(value);
    }
    public static PolicyTypeEnum fromValue(String input) {
      for (PolicyTypeEnum b : PolicyTypeEnum.values()) {
        if (b.value.equals(input)) {
          return b;
        }
      }
      return null;
    }
    public static class Adapter extends TypeAdapter {
      @Override
      public void write(final JsonWriter jsonWriter, final PolicyTypeEnum enumeration) throws IOException {
        jsonWriter.value(String.valueOf(enumeration.getValue()));
      }

      @Override
      public PolicyTypeEnum read(final JsonReader jsonReader) throws IOException {
        Object value = jsonReader.nextString();
        return PolicyTypeEnum.fromValue((String)(value));
      }
    }
  }  @SerializedName("PolicyType")
  private PolicyTypeEnum policyType = null;

  @SerializedName("PrincipalName")
  private String principalName = null;

  /**
   * Gets or Sets principalType
   */
  @JsonAdapter(PrincipalTypeEnum.Adapter.class)
  public enum PrincipalTypeEnum {
    @SerializedName("User")
    USER("User"),
    @SerializedName("Role")
    ROLE("Role"),
    @SerializedName("UserGroup")
    USERGROUP("UserGroup");

    private String value;

    PrincipalTypeEnum(String value) {
      this.value = value;
    }
    public String getValue() {
      return value;
    }

    @Override
    public String toString() {
      return String.valueOf(value);
    }
    public static PrincipalTypeEnum fromValue(String input) {
      for (PrincipalTypeEnum b : PrincipalTypeEnum.values()) {
        if (b.value.equals(input)) {
          return b;
        }
      }
      return null;
    }
    public static class Adapter extends TypeAdapter {
      @Override
      public void write(final JsonWriter jsonWriter, final PrincipalTypeEnum enumeration) throws IOException {
        jsonWriter.value(String.valueOf(enumeration.getValue()));
      }

      @Override
      public PrincipalTypeEnum read(final JsonReader jsonReader) throws IOException {
        Object value = jsonReader.nextString();
        return PrincipalTypeEnum.fromValue((String)(value));
      }
    }
  }  @SerializedName("PrincipalType")
  private PrincipalTypeEnum principalType = null;

  @SerializedName("ProjectName")
  private List projectName = null;

  public AttachPolicyInProjectRequest policyName(String policyName) {
    this.policyName = policyName;
    return this;
  }

   /**
   * Get policyName
   * @return policyName
  **/
  @NotNull
  @Schema(required = true, description = "")
  public String getPolicyName() {
    return policyName;
  }

  public void setPolicyName(String policyName) {
    this.policyName = policyName;
  }

  public AttachPolicyInProjectRequest policyType(PolicyTypeEnum policyType) {
    this.policyType = policyType;
    return this;
  }

   /**
   * Get policyType
   * @return policyType
  **/
  @NotNull
  @Schema(required = true, description = "")
  public PolicyTypeEnum getPolicyType() {
    return policyType;
  }

  public void setPolicyType(PolicyTypeEnum policyType) {
    this.policyType = policyType;
  }

  public AttachPolicyInProjectRequest principalName(String principalName) {
    this.principalName = principalName;
    return this;
  }

   /**
   * Get principalName
   * @return principalName
  **/
  @NotNull
  @Schema(required = true, description = "")
  public String getPrincipalName() {
    return principalName;
  }

  public void setPrincipalName(String principalName) {
    this.principalName = principalName;
  }

  public AttachPolicyInProjectRequest principalType(PrincipalTypeEnum principalType) {
    this.principalType = principalType;
    return this;
  }

   /**
   * Get principalType
   * @return principalType
  **/
  @NotNull
  @Schema(required = true, description = "")
  public PrincipalTypeEnum getPrincipalType() {
    return principalType;
  }

  public void setPrincipalType(PrincipalTypeEnum principalType) {
    this.principalType = principalType;
  }

  public AttachPolicyInProjectRequest projectName(List projectName) {
    this.projectName = projectName;
    return this;
  }

  public AttachPolicyInProjectRequest addProjectNameItem(String projectNameItem) {
    if (this.projectName == null) {
      this.projectName = new ArrayList();
    }
    this.projectName.add(projectNameItem);
    return this;
  }

   /**
   * Get projectName
   * @return projectName
  **/
  @Schema(description = "")
  public List getProjectName() {
    return projectName;
  }

  public void setProjectName(List projectName) {
    this.projectName = projectName;
  }


  @Override
  public boolean equals(java.lang.Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    AttachPolicyInProjectRequest attachPolicyInProjectRequest = (AttachPolicyInProjectRequest) o;
    return Objects.equals(this.policyName, attachPolicyInProjectRequest.policyName) &&
        Objects.equals(this.policyType, attachPolicyInProjectRequest.policyType) &&
        Objects.equals(this.principalName, attachPolicyInProjectRequest.principalName) &&
        Objects.equals(this.principalType, attachPolicyInProjectRequest.principalType) &&
        Objects.equals(this.projectName, attachPolicyInProjectRequest.projectName);
  }

  @Override
  public int hashCode() {
    return Objects.hash(policyName, policyType, principalName, principalType, projectName);
  }


  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class AttachPolicyInProjectRequest {\n");
    
    sb.append("    policyName: ").append(toIndentedString(policyName)).append("\n");
    sb.append("    policyType: ").append(toIndentedString(policyType)).append("\n");
    sb.append("    principalName: ").append(toIndentedString(principalName)).append("\n");
    sb.append("    principalType: ").append(toIndentedString(principalType)).append("\n");
    sb.append("    projectName: ").append(toIndentedString(projectName)).append("\n");
    sb.append("}");
    return sb.toString();
  }

  /**
   * Convert the given object to string with each line indented by 4 spaces
   * (except the first line).
   */
  private String toIndentedString(java.lang.Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy