Interface IDatabaseObject

    • Method Detail

      • getVersion

        int getVersion()
        Getter for the schema version number this object applies to
        Returns:
      • apply

        void apply​(ISchemaAdapter target,
                   SchemaApplyContext context)
        Apply the DDL for this object to the target database
        Parameters:
        priorVersion -
        target - the database target
        context - context to control the schema apply process
      • apply

        void apply​(java.lang.Integer priorVersion,
                   ISchemaAdapter target,
                   SchemaApplyContext context)
        Apply migration logic to bring the target database to the current level of this object
        Parameters:
        priorVersion -
        target - the database target
        context - to control the schema apply process
      • applyTx

        void applyTx​(ISchemaAdapter target,
                     SchemaApplyContext context,
                     ITransactionProvider cp,
                     IVersionHistoryService vhs)
        Apply the DDL, but within its own transaction
        Parameters:
        target - the target database we apply to
        context - the context used to modify how the schema objects are applied
        cp - of thread-specific transactions
        vhs - the service interface for adding this object to the version history table
      • applyDistributionRules

        void applyDistributionRules​(ISchemaAdapter target,
                                    int pass)
        Apply any distribution rules associated with the object (usually a table)
        Parameters:
        target - the target database we apply the operation to
        pass - multiple pass number
      • applyVersion

        void applyVersion​(ISchemaAdapter target,
                          SchemaApplyContext context,
                          IVersionHistoryService vhs)
        Apply the change, but only if it has a newer version than we already have recorded in the database
        Parameters:
        target -
        context -
        vhs - the service used to manage the version history table
      • drop

        void drop​(ISchemaAdapter target)
        DROP this object from the target database
        Parameters:
        target -
      • grant

        void grant​(ISchemaAdapter target,
                   java.lang.String groupName,
                   java.lang.String toUser)
        Grant the given privileges to the user
        Parameters:
        target -
        groupName -
        toUser -
      • visit

        void visit​(java.util.function.Consumer<IDatabaseObject> c)
        Visit this object, calling the consumer for itself, or its children if any
        Parameters:
        c -
      • getName

        java.lang.String getName()
        Return the qualified name for this object (e.g. schema.name).
        Returns:
      • getTypeNameVersion

        java.lang.String getTypeNameVersion()
        Get the qualified name for this object: objectType:objectName:objectVersion
        Returns:
      • getTags

        java.util.Map<java.lang.String,​java.lang.String> getTags()
        Get the map of tags associated with this object. Used to find things in the PhysicalDataModel
        Returns:
      • addTag

        void addTag​(java.lang.String tagName,
                    java.lang.String tagValue)
        Add the tag name/value to the tag map for this object
        Parameters:
        tagName -
        tagValue -
      • addDependencies

        void addDependencies​(java.util.Collection<IDatabaseObject> deps)
        Add the collection of dependencies to this object
        Parameters:
        deps -
      • fetchDependenciesTo

        void fetchDependenciesTo​(java.util.Collection<IDatabaseObject> out)
        Fetch dependencies from this into the given out list
        Parameters:
        out -