Package com.atlassian.confluence.tenant
Class BroadcastingTenantRegistry
- java.lang.Object
-
- com.atlassian.confluence.tenant.BroadcastingTenantRegistry
-
- All Implemented Interfaces:
TenantRegistry
public class BroadcastingTenantRegistry extends Object implements TenantRegistry
Decorator forTenantRegistrywhich publishes the events specified in the Atlassian Tenancy API.The separation between
VolatileSingleTenantRegistryand this implementation is currently necessary since the tenant is not persisted (within Confluence). There should be noTenantArrivedEventpublished in case of an existing tenant being replayed. This is achieved by replaying the tenant very early in the bootstrap, during the initialisation of the bootstrap container. The bootstrap container hosts theVolatileSingleTenantRegistrywhich will not broadcast any events of the API.- Since:
- 5.6
-
-
Constructor Summary
Constructors Constructor Description BroadcastingTenantRegistry(TenantRegistry delegate, com.atlassian.event.api.EventPublisher eventPublisher)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaddTenant(com.atlassian.tenancy.api.Tenant tenant)booleanisRegistryVacant()booleanisTenantRegistered(com.atlassian.tenancy.api.Tenant tenant)booleanremoveTenant(com.atlassian.tenancy.api.Tenant tenant)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.atlassian.confluence.tenant.TenantRegistry
hasTenant
-
-
-
-
Constructor Detail
-
BroadcastingTenantRegistry
public BroadcastingTenantRegistry(TenantRegistry delegate, com.atlassian.event.api.EventPublisher eventPublisher)
-
-
Method Detail
-
addTenant
public boolean addTenant(com.atlassian.tenancy.api.Tenant tenant)
- Specified by:
addTenantin interfaceTenantRegistry- Parameters:
tenant- the tenant to add- Returns:
- true if the tenant was added during this request, false if the registry already knew it
-
removeTenant
public boolean removeTenant(com.atlassian.tenancy.api.Tenant tenant)
- Specified by:
removeTenantin interfaceTenantRegistry- Parameters:
tenant- the tenant to remove- Returns:
- true if the tenant was removed, false if the registry didn't know about it
-
isTenantRegistered
public boolean isTenantRegistered(com.atlassian.tenancy.api.Tenant tenant)
- Specified by:
isTenantRegisteredin interfaceTenantRegistry- Parameters:
tenant- the tenant to test for being registered- Returns:
- true if the tenant is currently registered
-
isRegistryVacant
public boolean isRegistryVacant()
- Specified by:
isRegistryVacantin interfaceTenantRegistry- Returns:
- true if the registry currently has no tenants
-
-