Class TablePerMultitenantPolicy

    • Constructor Detail

      • TablePerMultitenantPolicy

        public TablePerMultitenantPolicy​(ClassDescriptor desc)
    • Method Detail

      • addFieldsToRow

        public void addFieldsToRow​(org.eclipse.persistence.internal.sessions.AbstractRecord row,
                                   org.eclipse.persistence.internal.sessions.AbstractSession session)
        INTERNAL:
        Specified by:
        addFieldsToRow in interface MultitenantPolicy
      • getContextProperty

        public String getContextProperty()
        INTERNAL: Return the context property for this table per tenant policy.
      • getTable

        public org.eclipse.persistence.internal.helper.DatabaseTable getTable​(String tableName)
        INTERNAL: Return the new database table associated with this tenant.
      • getTable

        public org.eclipse.persistence.internal.helper.DatabaseTable getTable​(org.eclipse.persistence.internal.helper.DatabaseTable table)
        INTERNAL: Return the new database table associated with this tenant.
      • hasContextTenant

        public boolean hasContextTenant()
        INTERNAL: Return true if the tenant has been set for this policy.
      • isPrefixPerTable

        public boolean isPrefixPerTable()
        PUBLIC: Return true if this descriptor requires a prefix to the table per tenant.
      • isSchemaPerTable

        public boolean isSchemaPerTable()
        PUBLIC: Return true if this descriptor requires a table schema per tenant.
      • isSuffixPerTable

        public boolean isSuffixPerTable()
        PUBLIC: Return true if this descriptor requires a suffix to the table per tenant.
      • postInitialize

        public void postInitialize​(org.eclipse.persistence.internal.sessions.AbstractSession session)
        INTERNAL:
        Specified by:
        postInitialize in interface MultitenantPolicy
      • setTenantTableDiscriminatorType

        public void setTenantTableDiscriminatorType​(TenantTableDiscriminatorType type)
        PUBLIC: Set the tenant table discriminator type.
      • setContextProperty

        public void setContextProperty​(String contextProperty)
        PUBLIC: Set the context property used to define the table per tenant. If it is not set by the user, the policy defaults it to the multitenant property default of "eclipselink.tenant-id"
      • setContextTenant

        public void setContextTenant​(String contextTenant)
        INTERNAL:
      • shouldInitialize

        public boolean shouldInitialize​(org.eclipse.persistence.internal.sessions.AbstractSession session)
        INTERNAL: This method is called during regular descriptor initialization. When initializing at that level no cloning should be done on when setting the context tenant.
      • usesContextProperty

        public boolean usesContextProperty​(String property)
        INTERNAL: Return true if this policy accepts the given property.