4. Interfaces

4.1. Model Interfaces

4.1.1. TenantInterface

This interface should be implemented by every tenant.

Note

This interface extends TimestampableInterface, EnableableInterface and SoftDeleteableInterface.

4.1.2. OrganizationInterface

This interface should be implemented by every organization.

4.1.3. TenantAwareInterface

This interface should be implemented by models associated with a specific tenant.

4.2. Service Interfaces

4.2.1. TenantContextInterface

This interface should be implemented by a service responsible for managing the currently used Tenant.

4.2.2. TenantProviderInterface

This interface should be implemented by a service responsible for providing all available tenants.

4.2.3. TenantResolverInterface

This interface should be implemented by a service responsible for resolving the current Tenant.

4.3. Repository Interfaces

4.3.1. TenantRepositoryInterface

This interface should be implemented by repositories responsible for storing the Tenant objects.

4.3.2. OrganizationRepositoryInterface

This interface should be implemented by repositories responsible for storing the OrganizationInterface objects.

4.4. Factory Interfaces

4.4.1. TenantFactoryInterface

This interface should be implemented by tenant factories which are responsible for creating objects of type TenantInterface.

4.4.2. OrganizationFactoryInterface

This interface should be implemented by organization factories which are responsible for creating objects of type OrganizationInterface.