Class NamespaceIsolationPolicies


  • public class NamespaceIsolationPolicies
    extends java.lang.Object
    Namespace isolation policies.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void assignBroker​(NamespaceName nsname, org.apache.pulsar.common.policies.data.BrokerStatus brkStatus, java.util.SortedSet<org.apache.pulsar.common.policies.data.BrokerStatus> primaryCandidates, java.util.SortedSet<org.apache.pulsar.common.policies.data.BrokerStatus> secondaryCandidates, java.util.SortedSet<org.apache.pulsar.common.policies.data.BrokerStatus> sharedCandidates)  
      void deletePolicy​(java.lang.String policyName)
      Delete a policy.
      java.util.Map<java.lang.String,​NamespaceIsolationDataImpl> getPolicies()
      Get the full policy map.
      NamespaceIsolationPolicy getPolicyByName​(java.lang.String policyName)
      Access method to get the namespace isolation policy by the policy name.
      NamespaceIsolationPolicy getPolicyByNamespace​(NamespaceName namespace)
      Get the namespace isolation policy for the specified namespace.
      boolean isSharedBroker​(java.lang.String host)
      Check to see whether a broker is in the shared broker pool or not.
      void setPolicy​(java.lang.String policyName, org.apache.pulsar.common.policies.data.NamespaceIsolationData policyData)
      Set the policy data for a single policy.
      • Methods inherited from class java.lang.Object

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

      • NamespaceIsolationPolicies

        public NamespaceIsolationPolicies()
      • NamespaceIsolationPolicies

        public NamespaceIsolationPolicies​(java.util.Map<java.lang.String,​NamespaceIsolationDataImpl> policiesMap)
    • Method Detail

      • getPolicyByName

        public NamespaceIsolationPolicy getPolicyByName​(java.lang.String policyName)
        Access method to get the namespace isolation policy by the policy name.
        Parameters:
        policyName -
        Returns:
      • getPolicyByNamespace

        public NamespaceIsolationPolicy getPolicyByNamespace​(NamespaceName namespace)
        Get the namespace isolation policy for the specified namespace.

        There should only be one namespace isolation policy defined for the specific namespace. If multiple policies match, the first one will be returned.

        Parameters:
        namespace -
        Returns:
      • setPolicy

        public void setPolicy​(java.lang.String policyName,
                              org.apache.pulsar.common.policies.data.NamespaceIsolationData policyData)
        Set the policy data for a single policy.
        Parameters:
        policyName -
        policyData -
      • deletePolicy

        public void deletePolicy​(java.lang.String policyName)
        Delete a policy.
        Parameters:
        policyName -
      • getPolicies

        public java.util.Map<java.lang.String,​NamespaceIsolationDataImpl> getPolicies()
        Get the full policy map.
        Returns:
        All policy data in a map
      • isSharedBroker

        public boolean isSharedBroker​(java.lang.String host)
        Check to see whether a broker is in the shared broker pool or not.
        Parameters:
        host -
        Returns:
      • assignBroker

        public void assignBroker​(NamespaceName nsname,
                                 org.apache.pulsar.common.policies.data.BrokerStatus brkStatus,
                                 java.util.SortedSet<org.apache.pulsar.common.policies.data.BrokerStatus> primaryCandidates,
                                 java.util.SortedSet<org.apache.pulsar.common.policies.data.BrokerStatus> secondaryCandidates,
                                 java.util.SortedSet<org.apache.pulsar.common.policies.data.BrokerStatus> sharedCandidates)