@java.lang.annotation.Target({ElementType.METHOD, ElementType.TYPE})
@java.lang.annotation.Retention(RetentionPolicy.RUNTIME)
@Inherited
@Documented
@org.codehaus.groovy.transform.GroovyASTTransformationClass("org.grails.datastore.gorm.transform.OrderedGormTransformation")
@GormASTTransformationClass("org.grails.datastore.gorm.multitenancy.transform.TenantTransform")
public @interface Tenant
An AST transformation that makes a particular class or method applicable to the tenant id returned by the passed closure. For example:
class FooService {
@Tenant({ "foo" })
void updateFoo() {
...
}
}
| Type | Name and Description |
|---|---|
java.lang.Class |
valueThe tenant resolver |
| Type | Name and Description |
|---|---|
java.lang.Class<? extends ConnectionSourcesProvider>[] |
datastoreIf you are using multiple GORM implementations and wish to create a transaction for a specific implementation then use this. |
| Methods inherited from class | Name |
|---|---|
class java.lang.Object |
java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll() |
If you are using multiple GORM implementations and wish to create a transaction for a specific implementation then use this. For example @Transactional(forDatastore=HibernateDatastore)
The tenant resolver