Class IAMPermissionSetsImpl

java.lang.Object
com.eqixiac.equinix.iam.client.implementation.IAMPermissionSetsImpl
All Implemented Interfaces:
IAMPermissionSets

public class IAMPermissionSetsImpl extends Object implements IAMPermissionSets
  • Constructor Details

    • IAMPermissionSetsImpl

      public IAMPermissionSetsImpl()
  • Method Details

    • list

      public PermissionSetList list(String projectId)
      Description copied from interface: IAMPermissionSets
      Lists the permission sets of a project (first page).
      Specified by:
      list in interface IAMPermissionSets
      Parameters:
      projectId - the IAM project id, project:<id> (for example project:abc-123); a bare Resource Manager UUID is rejected, convert it with ProjectIds.of(String). Project-scoped endpoints need an STS access-policy token (new IAM(BearerTokenProvider))
      Returns:
      the first page of permission sets
    • list

      public PermissionSetList list(String projectId, String pageToken, Integer pageSize)
      Description copied from interface: IAMPermissionSets
      Lists the permission sets of a project, controlling pagination.
      Specified by:
      list in interface IAMPermissionSets
      Parameters:
      projectId - the IAM project id, project:<id> (for example project:abc-123); a bare Resource Manager UUID is rejected, convert it with ProjectIds.of(String). Project-scoped endpoints need an STS access-policy token (new IAM(BearerTokenProvider))
      pageToken - the opaque page token from a prior response, or null for the first page
      pageSize - the maximum number of results per page, or null for the server default
      Returns:
      the requested page of permission sets
    • create

      public PermissionSet create(String projectId, CreatePermissionSetRequest request)
      Description copied from interface: IAMPermissionSets
      Creates a new permission set in a project.
      Specified by:
      create in interface IAMPermissionSets
      Parameters:
      projectId - the IAM project id, project:<id> (for example project:abc-123); a bare Resource Manager UUID is rejected, convert it with ProjectIds.of(String). Project-scoped endpoints need an STS access-policy token (new IAM(BearerTokenProvider))
      request - the permission set to create
      Returns:
      the created permission set
    • getByUuid

      public PermissionSet getByUuid(String projectId, String permissionSetId)
      Description copied from interface: IAMPermissionSets
      Retrieves a single permission set by id.
      Specified by:
      getByUuid in interface IAMPermissionSets
      Parameters:
      projectId - the IAM project id, project:<id> (for example project:abc-123); a bare Resource Manager UUID is rejected, convert it with ProjectIds.of(String). Project-scoped endpoints need an STS access-policy token (new IAM(BearerTokenProvider))
      permissionSetId - the permission set identifier
      Returns:
      the matching permission set
    • update

      public PermissionSet update(String projectId, String permissionSetId, UpdatePermissionSetRequest request)
      Description copied from interface: IAMPermissionSets
      Updates a permission set.
      Specified by:
      update in interface IAMPermissionSets
      Parameters:
      projectId - the IAM project id, project:<id> (for example project:abc-123); a bare Resource Manager UUID is rejected, convert it with ProjectIds.of(String). Project-scoped endpoints need an STS access-policy token (new IAM(BearerTokenProvider))
      permissionSetId - the permission set identifier
      request - the update (the request's lastRev guards against concurrent updates)
      Returns:
      the updated permission set
    • delete

      public Boolean delete(String projectId, String permissionSetId, String lastRev)
      Description copied from interface: IAMPermissionSets
      Deletes a permission set.

      The spec requires the permission set's last-known revision in the request body for optimistic-concurrency-controlled deletion.

      Specified by:
      delete in interface IAMPermissionSets
      Parameters:
      projectId - the IAM project id, project:<id> (for example project:abc-123); a bare Resource Manager UUID is rejected, convert it with ProjectIds.of(String). Project-scoped endpoints need an STS access-policy token (new IAM(BearerTokenProvider))
      permissionSetId - the permission set identifier
      lastRev - the last-known revision of the permission set (required; from PermissionSet.getRev())
      Returns:
      true if the deletion request was accepted