java.lang.Object
com.yahoo.vespa.hosted.controller.api.integration.athenz.ZmsClientMock
All Implemented Interfaces:
com.yahoo.vespa.athenz.client.zms.ZmsClient, AutoCloseable

public class ZmsClientMock extends Object implements com.yahoo.vespa.athenz.client.zms.ZmsClient
Author:
bjorncs
  • Constructor Summary

    Constructors
    Constructor
    Description
    ZmsClientMock(AthenzDbMock athenz, com.yahoo.vespa.athenz.api.AthenzIdentity controllerIdentity)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addPolicyRule(com.yahoo.vespa.athenz.api.AthenzDomain athenzDomain, String athenzPolicy, String action, com.yahoo.vespa.athenz.api.AthenzResourceName resourceName, com.yahoo.vespa.athenz.api.AthenzRole athenzRole)
     
    void
    addRoleMember(com.yahoo.vespa.athenz.api.AthenzRole role, com.yahoo.vespa.athenz.api.AthenzIdentity member, Optional<String> reason)
     
    void
     
    void
    createOrUpdateService(com.yahoo.vespa.athenz.api.AthenzService athenzService)
     
    void
    createPolicy(com.yahoo.vespa.athenz.api.AthenzDomain athenzDomain, String athenzPolicy)
     
    void
    createProviderResourceGroup(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity providerService, String resourceGroup, Set<com.yahoo.vespa.athenz.client.zms.RoleAction> roleActions, com.yahoo.vespa.athenz.api.OAuthCredentials oAuthCredentials)
     
    void
    createRole(com.yahoo.vespa.athenz.api.AthenzRole role, Map<String,Object> properties)
     
    void
    createSubdomain(com.yahoo.vespa.athenz.api.AthenzDomain parent, String name)
     
    void
    createTenancy(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity providerService, com.yahoo.vespa.athenz.api.OAuthCredentials oAuthCredentials)
     
    void
    createTenantResourceGroup(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity provider, String resourceGroup, Set<com.yahoo.vespa.athenz.client.zms.RoleAction> roleActions)
     
    void
    decidePendingRoleMembership(com.yahoo.vespa.athenz.api.AthenzRole athenzRole, com.yahoo.vespa.athenz.api.AthenzIdentity athenzIdentity, Instant expiry, Optional<String> reason, Optional<com.yahoo.vespa.athenz.api.OAuthCredentials> oAuthCredentials, boolean approve)
     
    boolean
    deletePolicyRule(com.yahoo.vespa.athenz.api.AthenzDomain athenzDomain, String athenzPolicy, String action, com.yahoo.vespa.athenz.api.AthenzResourceName resourceName, com.yahoo.vespa.athenz.api.AthenzRole athenzRole)
     
    void
    deleteProviderResourceGroup(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity providerService, String resourceGroup, com.yahoo.vespa.athenz.api.OAuthCredentials oAuthCredentials)
     
    void
    deleteRole(com.yahoo.vespa.athenz.api.AthenzRole athenzRole)
     
    void
    deleteRoleMember(com.yahoo.vespa.athenz.api.AthenzRole role, com.yahoo.vespa.athenz.api.AthenzIdentity member)
     
    void
    deleteService(com.yahoo.vespa.athenz.api.AthenzService athenzService)
     
    void
    deleteTenancy(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity providerService, com.yahoo.vespa.athenz.api.OAuthCredentials oAuthCredentials)
     
    List<com.yahoo.vespa.athenz.api.AthenzDomain>
     
    com.yahoo.vespa.athenz.api.AthenzRoleInformation
    getFullRoleInformation(com.yahoo.vespa.athenz.api.AthenzRole role)
     
    boolean
    getGroupMembership(com.yahoo.vespa.athenz.api.AthenzGroup group, com.yahoo.vespa.athenz.api.AthenzIdentity identity)
     
    boolean
    getMembership(com.yahoo.vespa.athenz.api.AthenzRole role, com.yahoo.vespa.athenz.api.AthenzIdentity identity)
     
    Optional<com.yahoo.vespa.athenz.api.AthenzPolicy>
    getPolicy(com.yahoo.vespa.athenz.api.AthenzDomain domain, String name)
     
    com.yahoo.vespa.athenz.client.zms.QuotaUsage
     
    Set<com.yahoo.vespa.athenz.client.zms.RoleAction>
    getTenantResourceGroups(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity provider, String resourceGroup)
     
    boolean
    hasAccess(com.yahoo.vespa.athenz.api.AthenzResourceName resource, String action, com.yahoo.vespa.athenz.api.AthenzIdentity identity)
     
    List<com.yahoo.vespa.athenz.api.AthenzIdentity>
    listMembers(com.yahoo.vespa.athenz.api.AthenzRole athenzRole)
     
    Map<com.yahoo.vespa.athenz.api.AthenzIdentity,String>
    listPendingRoleApprovals(com.yahoo.vespa.athenz.api.AthenzRole athenzRole)
     
    listPolicies(com.yahoo.vespa.athenz.api.AthenzDomain domain)
     
    Set<com.yahoo.vespa.athenz.api.AthenzRole>
    listRoles(com.yahoo.vespa.athenz.api.AthenzDomain domain)
     
    List<com.yahoo.vespa.athenz.api.AthenzService>
    listServices(com.yahoo.vespa.athenz.api.AthenzDomain athenzDomain)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ZmsClientMock

      public ZmsClientMock(AthenzDbMock athenz, com.yahoo.vespa.athenz.api.AthenzIdentity controllerIdentity)
  • Method Details

    • createTenancy

      public void createTenancy(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity providerService, com.yahoo.vespa.athenz.api.OAuthCredentials oAuthCredentials)
      Specified by:
      createTenancy in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • deleteTenancy

      public void deleteTenancy(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity providerService, com.yahoo.vespa.athenz.api.OAuthCredentials oAuthCredentials)
      Specified by:
      deleteTenancy in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • createProviderResourceGroup

      public void createProviderResourceGroup(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity providerService, String resourceGroup, Set<com.yahoo.vespa.athenz.client.zms.RoleAction> roleActions, com.yahoo.vespa.athenz.api.OAuthCredentials oAuthCredentials)
      Specified by:
      createProviderResourceGroup in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • deleteProviderResourceGroup

      public void deleteProviderResourceGroup(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity providerService, String resourceGroup, com.yahoo.vespa.athenz.api.OAuthCredentials oAuthCredentials)
      Specified by:
      deleteProviderResourceGroup in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • createTenantResourceGroup

      public void createTenantResourceGroup(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity provider, String resourceGroup, Set<com.yahoo.vespa.athenz.client.zms.RoleAction> roleActions)
      Specified by:
      createTenantResourceGroup in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • getTenantResourceGroups

      public Set<com.yahoo.vespa.athenz.client.zms.RoleAction> getTenantResourceGroups(com.yahoo.vespa.athenz.api.AthenzDomain tenantDomain, com.yahoo.vespa.athenz.api.AthenzIdentity provider, String resourceGroup)
      Specified by:
      getTenantResourceGroups in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • addRoleMember

      public void addRoleMember(com.yahoo.vespa.athenz.api.AthenzRole role, com.yahoo.vespa.athenz.api.AthenzIdentity member, Optional<String> reason)
      Specified by:
      addRoleMember in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • deleteRoleMember

      public void deleteRoleMember(com.yahoo.vespa.athenz.api.AthenzRole role, com.yahoo.vespa.athenz.api.AthenzIdentity member)
      Specified by:
      deleteRoleMember in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • getMembership

      public boolean getMembership(com.yahoo.vespa.athenz.api.AthenzRole role, com.yahoo.vespa.athenz.api.AthenzIdentity identity)
      Specified by:
      getMembership in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • getGroupMembership

      public boolean getGroupMembership(com.yahoo.vespa.athenz.api.AthenzGroup group, com.yahoo.vespa.athenz.api.AthenzIdentity identity)
      Specified by:
      getGroupMembership in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • getDomainList

      public List<com.yahoo.vespa.athenz.api.AthenzDomain> getDomainList(String prefix)
      Specified by:
      getDomainList in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • hasAccess

      public boolean hasAccess(com.yahoo.vespa.athenz.api.AthenzResourceName resource, String action, com.yahoo.vespa.athenz.api.AthenzIdentity identity)
      Specified by:
      hasAccess in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • createPolicy

      public void createPolicy(com.yahoo.vespa.athenz.api.AthenzDomain athenzDomain, String athenzPolicy)
      Specified by:
      createPolicy in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • addPolicyRule

      public void addPolicyRule(com.yahoo.vespa.athenz.api.AthenzDomain athenzDomain, String athenzPolicy, String action, com.yahoo.vespa.athenz.api.AthenzResourceName resourceName, com.yahoo.vespa.athenz.api.AthenzRole athenzRole)
      Specified by:
      addPolicyRule in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • deletePolicyRule

      public boolean deletePolicyRule(com.yahoo.vespa.athenz.api.AthenzDomain athenzDomain, String athenzPolicy, String action, com.yahoo.vespa.athenz.api.AthenzResourceName resourceName, com.yahoo.vespa.athenz.api.AthenzRole athenzRole)
      Specified by:
      deletePolicyRule in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • getPolicy

      public Optional<com.yahoo.vespa.athenz.api.AthenzPolicy> getPolicy(com.yahoo.vespa.athenz.api.AthenzDomain domain, String name)
      Specified by:
      getPolicy in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • listPendingRoleApprovals

      public Map<com.yahoo.vespa.athenz.api.AthenzIdentity,String> listPendingRoleApprovals(com.yahoo.vespa.athenz.api.AthenzRole athenzRole)
      Specified by:
      listPendingRoleApprovals in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • decidePendingRoleMembership

      public void decidePendingRoleMembership(com.yahoo.vespa.athenz.api.AthenzRole athenzRole, com.yahoo.vespa.athenz.api.AthenzIdentity athenzIdentity, Instant expiry, Optional<String> reason, Optional<com.yahoo.vespa.athenz.api.OAuthCredentials> oAuthCredentials, boolean approve)
      Specified by:
      decidePendingRoleMembership in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • listMembers

      public List<com.yahoo.vespa.athenz.api.AthenzIdentity> listMembers(com.yahoo.vespa.athenz.api.AthenzRole athenzRole)
      Specified by:
      listMembers in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • listServices

      public List<com.yahoo.vespa.athenz.api.AthenzService> listServices(com.yahoo.vespa.athenz.api.AthenzDomain athenzDomain)
      Specified by:
      listServices in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • createOrUpdateService

      public void createOrUpdateService(com.yahoo.vespa.athenz.api.AthenzService athenzService)
      Specified by:
      createOrUpdateService in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • deleteService

      public void deleteService(com.yahoo.vespa.athenz.api.AthenzService athenzService)
      Specified by:
      deleteService in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • createRole

      public void createRole(com.yahoo.vespa.athenz.api.AthenzRole role, Map<String,Object> properties)
      Specified by:
      createRole in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • listRoles

      public Set<com.yahoo.vespa.athenz.api.AthenzRole> listRoles(com.yahoo.vespa.athenz.api.AthenzDomain domain)
      Specified by:
      listRoles in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • listPolicies

      public Set<String> listPolicies(com.yahoo.vespa.athenz.api.AthenzDomain domain)
      Specified by:
      listPolicies in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • deleteRole

      public void deleteRole(com.yahoo.vespa.athenz.api.AthenzRole athenzRole)
      Specified by:
      deleteRole in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • createSubdomain

      public void createSubdomain(com.yahoo.vespa.athenz.api.AthenzDomain parent, String name)
      Specified by:
      createSubdomain in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • getFullRoleInformation

      public com.yahoo.vespa.athenz.api.AthenzRoleInformation getFullRoleInformation(com.yahoo.vespa.athenz.api.AthenzRole role)
      Specified by:
      getFullRoleInformation in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • getQuotaUsage

      public com.yahoo.vespa.athenz.client.zms.QuotaUsage getQuotaUsage()
      Specified by:
      getQuotaUsage in interface com.yahoo.vespa.athenz.client.zms.ZmsClient
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface com.yahoo.vespa.athenz.client.zms.ZmsClient