Class NamespaceIsolationPolicies
- java.lang.Object
-
- org.apache.pulsar.common.policies.impl.NamespaceIsolationPolicies
-
public class NamespaceIsolationPolicies extends java.lang.Object
Namespace isolation policies.
-
-
Constructor Summary
Constructors Constructor Description NamespaceIsolationPolicies()
NamespaceIsolationPolicies(java.util.Map<java.lang.String,NamespaceIsolationDataImpl> policiesMap)
-
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.
-
-
-
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)
-
-