package com.twilio.jwt.accesstoken; /** * Grant used to access Twilio TaskRouter. * * <p> * For more information see: * <a href="https://www.twilio.com/docs/api/rest/access-tokens"> * https://www.twilio.com/docs/api/rest/access-tokens * </a> * </p> */ public class TaskRouterGrant implements Grant { private String workspaceSid; private String workerSid; private String role; public String getWorkspaceSid() { return workspaceSid; } public TaskRouterGrant setWorkspaceSid(String workspaceSid) { this.workspaceSid = workspaceSid; return this; } public String getWorkerSid() { return workerSid; } public TaskRouterGrant setWorkerSid(String workerSid) { this.workerSid = workerSid; return this; } public String getRole() { return role; } public TaskRouterGrant setRole(String role) { this.role = role; return this; } @Override public String getGrantKey() { return "task_router"; } @Override public Object getPayload() { return new TaskRouterGrant.Payload(this); } @SuppressWarnings("checkstyle:membername") public class Payload { public final String workspace_sid; public final String worker_sid; public final String role; /** * Create the grant payload. * * @param grant TaskRouter grant */ public Payload(TaskRouterGrant grant) { this.workspace_sid = grant.workspaceSid; this.worker_sid = grant.workerSid; this.role = grant.role; } } }