Class FunctionDef
- java.lang.Object
-
- org.linuxforhealth.fhir.database.utils.model.BaseObject
-
- org.linuxforhealth.fhir.database.utils.model.FunctionDef
-
- All Implemented Interfaces:
IDatabaseObject
public class FunctionDef extends BaseObject
The definition of a function, whose content is provided by a Supplierfunction
-
-
Field Summary
-
Fields inherited from class org.linuxforhealth.fhir.database.utils.model.BaseObject
migrations, version
-
-
Constructor Summary
Constructors Constructor Description FunctionDef(java.lang.String schemaName, java.lang.String procedureName, int version, java.util.function.Supplier<java.lang.String> supplier, int distributeByParamNum)
Public constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
apply(java.lang.Integer priorVersion, ISchemaAdapter target, SchemaApplyContext context)
Apply migration logic to bring the target database to the current level of this objectvoid
apply(ISchemaAdapter target, SchemaApplyContext context)
Apply the DDL for this object to the target databasevoid
drop(ISchemaAdapter target)
DROP this object from the target databaseprotected void
grantGroupPrivileges(ISchemaAdapter target, java.util.Set<Privilege> group, java.lang.String toUser)
Internal method which can be override by different object types which may need to call a different grant method on the adaptervoid
visit(DataModelVisitor v)
Visit thisIDatabaseObject
with the givenDataModelVisitor
.void
visitReverse(DataModelVisitor v)
Visit thisIDatabaseObject
with the givenDataModelVisitor
.-
Methods inherited from class org.linuxforhealth.fhir.database.utils.model.BaseObject
addDependencies, addDependency, addPrivilege, addTag, addTags, applyDistributionRules, applyTx, applyVersion, collect, equals, fetchDependenciesTo, getName, getObjectName, getObjectType, getQualifiedName, getSchemaName, getTags, getTypeNameVersion, getVersion, grant, hashCode, toString, visit
-
-
-
-
Constructor Detail
-
FunctionDef
public FunctionDef(java.lang.String schemaName, java.lang.String procedureName, int version, java.util.function.Supplier<java.lang.String> supplier, int distributeByParamNum)
Public constructor. Supports distribution of the function by the given parameter number- Parameters:
schemaName
-procedureName
-version
-supplier
-distributeByParamNum
-
-
-
Method Detail
-
apply
public void apply(ISchemaAdapter target, SchemaApplyContext context)
Description copied from interface:IDatabaseObject
Apply the DDL for this object to the target database- Parameters:
target
- the database targetcontext
- context to control the schema apply process
-
apply
public void apply(java.lang.Integer priorVersion, ISchemaAdapter target, SchemaApplyContext context)
Description copied from interface:IDatabaseObject
Apply migration logic to bring the target database to the current level of this objecttarget
- the database targetcontext
- to control the schema apply process
-
drop
public void drop(ISchemaAdapter target)
Description copied from interface:IDatabaseObject
DROP this object from the target database
-
grantGroupPrivileges
protected void grantGroupPrivileges(ISchemaAdapter target, java.util.Set<Privilege> group, java.lang.String toUser)
Description copied from class:BaseObject
Internal method which can be override by different object types which may need to call a different grant method on the adapter- Overrides:
grantGroupPrivileges
in classBaseObject
-
visit
public void visit(DataModelVisitor v)
Description copied from interface:IDatabaseObject
Visit thisIDatabaseObject
with the givenDataModelVisitor
. Any sub-objects should be visited in creation order.
-
visitReverse
public void visitReverse(DataModelVisitor v)
Description copied from interface:IDatabaseObject
Visit thisIDatabaseObject
with the givenDataModelVisitor
. Any sub-objects should be visited in reverse order.
-
-