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

org.twonote.rgwadmin4j.model.SubUser Maven / Gradle / Ivy

There is a newer version: 2.0.9
Show newest version
package org.twonote.rgwadmin4j.model;

import com.google.gson.annotations.SerializedName;

/** Represents the sub-user information. */
public class SubUser {
  /** id : rgwAdmin4jTest-6eed8682-c533-4364-bd36-684e3a9f32c7:qqqqq permissions : full-control */
  private String id;

  @SerializedName("permissions")
  private Permission permission;

  /**
   * Get sub-user ID
   *
   * 

Note that it will be in the absolute form, i.e., [USER_ID]:[SUB_USER_ID] * * @return sub-user ID */ public String getId() { return id; } public void setId(String id) { this.id = id; } public String getParentUserId() { return id.split(":")[0]; } public String getRelativeSubUserId() { return id.split(":")[1]; } /** * Get access permission of the sub-user. * *

Note that the sub-user may not have any permission. * * @return The permission. */ public Permission getPermission() { return permission; } public void setPermission(Permission permission) { this.permission = permission; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; SubUser subUser = (SubUser) o; if (id != null ? !id.equals(subUser.id) : subUser.id != null) return false; return permission == subUser.permission; } @Override public int hashCode() { int result = id != null ? id.hashCode() : 0; result = 31 * result + (permission != null ? permission.hashCode() : 0); return result; } /** Access permission for sub-user. */ public enum Permission { @SerializedName("") NONE, @SerializedName("read") READ, @SerializedName("write") WRITE, @SerializedName("readwrite") READ_WRITE, @SerializedName( value = "full", alternate = {"full-control"} ) FULL; @Override public String toString() { if (this.equals(NONE)) { return ""; } else { return super.toString().toLowerCase(); } } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy