io.permit.sdk.openapi.models.RoleUpdate Maven / Gradle / Ivy
Show all versions of permit-sdk-java Show documentation
package io.permit.sdk.openapi.models;
import java.util.HashMap;
import java.util.List;
import javax.annotation.Generated;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
/**
* RoleUpdate
*
*
*
*/
@Generated("jsonschema2pojo")
public class RoleUpdate {
/**
* Name
*
* The name of the role
*
*/
@SerializedName("name")
@Expose
public String name;
/**
* Description
*
* optional description string explaining what this role represents, or what permissions are granted to it.
*
*/
@SerializedName("description")
@Expose
public String description;
/**
* Permissions
*
* list of action keys that define what actions this resource role is permitted to do
*
*/
@SerializedName("permissions")
@Expose
public List permissions;
/**
* Attributes
*
* optional dictionary of key-value pairs that can be used to store arbitrary metadata about this role. This metadata can be used to filter role using query parameters with attr_ prefix, currently supports only 'equals' operator
*
*/
@SerializedName("attributes")
@Expose
public HashMap attributes;
/**
* Extends
*
* list of role keys that define what roles this role extends. In other words: this role will automatically inherit all the permissions of the given roles in this list.
*
*/
@SerializedName("extends")
@Expose
public List _extends;
public RoleUpdate withName(String name) {
this.name = name;
return this;
}
public RoleUpdate withDescription(String description) {
this.description = description;
return this;
}
public RoleUpdate withPermissions(List permissions) {
this.permissions = permissions;
return this;
}
public RoleUpdate withAttributes(HashMap attributes) {
this.attributes = attributes;
return this;
}
public RoleUpdate withExtends(List _extends) {
this._extends = _extends;
return this;
}
}