Uses of Interface
com.ibm.fhir.database.utils.model.IDatabaseObject
-
Packages that use IDatabaseObject Package Description com.ibm.fhir.database.utils.model com.ibm.fhir.schema.control -
-
Uses of IDatabaseObject in com.ibm.fhir.database.utils.model
Classes in com.ibm.fhir.database.utils.model that implement IDatabaseObject Modifier and Type Class Description class
AlterSequenceStartWith
Modify an existing sequence to start with a higher valueclass
AlterTableAddColumn
Add new columns to an existing table.class
AlterTableIdentityCache
Modify the CACHE property of an AS IDENTITY column (changes the CACHE property of the underlying SEQUENCE).class
BaseObject
BaseObjectclass
CreateIndex
Index creation definition for creating new indexes after the table has been defined (e.g.class
DatabaseObject
Represents objects which are part of the database, but which do not belong to a particular schema (like tablespace, for example).class
FunctionDef
The definition of a function, whose content is provided by a Supplierfunction class
NopObject
A NOP (no operation) object which can be used to simplify dependencies by making this object depend on other, then everything else simply depend on this, should that be the sort of behavior you want.class
ObjectGroup
A collection ofIDatabaseObject
which are applied in order within one transactionclass
ProcedureDef
The definition of a stored procedure, whose content is provided by a Supplierfunction class
RowArrayType
Represents the array type CREATE OR REPLACE TYPE.t_str_values_arr AS .t_str_values ARRAY[256] class
RowType
Represents the ROW type used to pass parameters to the add_resource stored procedures CREATE OR REPLACE TYPE.t_str_values AS ROW (parameter_name_id INTEGER, str_value VARCHAR(511 OCTETS), str_value_lcase VARCHAR(511 OCTETS)) class
Sequence
Sequence related to the SQL sequenceclass
SessionVariableDef
Adds a session variable to the databaseclass
Table
An immutable definition of a tableclass
Tablespace
Used to create and drop tablespaces within a databaseclass
View
Defines a SQL VIEW objectMethods in com.ibm.fhir.database.utils.model that return types with arguments of type IDatabaseObject Modifier and Type Method Description Collection<IDatabaseObject>
DatabaseObject. getDependencies()
Get the collection of dependencies for this objectCollection<IDatabaseObject>
PhysicalDataModel. searchByTag(String tagName, String tagValue)
Find all the objects matching the given tag name and value.Methods in com.ibm.fhir.database.utils.model with parameters of type IDatabaseObject Modifier and Type Method Description void
BaseObject. addDependency(IDatabaseObject obj)
Add the given obj as a dependency of this (obj must be created before this, or dropped after this)View.Builder
View.Builder. addDependency(IDatabaseObject obj)
Add theIDatabaseObject
as a dependency for this viewvoid
PhysicalDataModel. addObject(IDatabaseObject obj)
Just a general object we don't need to know the details ofMethod parameters in com.ibm.fhir.database.utils.model with type arguments of type IDatabaseObject Modifier and Type Method Description void
BaseObject. addDependencies(Collection<IDatabaseObject> obj)
Add the given collection of dependencies to our setvoid
IDatabaseObject. addDependencies(Collection<IDatabaseObject> deps)
Add the collection of dependencies to this objectvoid
Tablespace. addDependencies(Collection<IDatabaseObject> deps)
FunctionDef
PhysicalDataModel. addFunction(String schemaName, String objectName, int version, Supplier<String> templateProvider, Collection<IDatabaseObject> dependencies, Collection<GroupPrivilege> privileges)
adds the function to the model.ProcedureDef
PhysicalDataModel. addProcedure(String schemaName, String objectName, int version, Supplier<String> templateProvider, Collection<IDatabaseObject> dependencies, Collection<GroupPrivilege> privileges)
Add a stored procedure definition.void
BaseObject. fetchDependenciesTo(Collection<IDatabaseObject> out)
void
IDatabaseObject. fetchDependenciesTo(Collection<IDatabaseObject> out)
Fetch dependencies from this into the given out listvoid
Tablespace. fetchDependenciesTo(Collection<IDatabaseObject> out)
void
PhysicalDataModel. processObjectsWithTag(String tagName, String tagValue, Consumer<IDatabaseObject> c)
Call the consumer for each object matching the given tag name/value tuplevoid
BaseObject. visit(Consumer<IDatabaseObject> c)
void
DatabaseObject. visit(Consumer<IDatabaseObject> c)
void
IDatabaseObject. visit(Consumer<IDatabaseObject> c)
Visit this object, calling the consumer for itself, or its children if anyvoid
ObjectGroup. visit(Consumer<IDatabaseObject> c)
Constructor parameters in com.ibm.fhir.database.utils.model with type arguments of type IDatabaseObject Constructor Description ObjectGroup(String schemaName, String name, Collection<IDatabaseObject> groupIn)
Public constructorTable(String schemaName, String name, int version, String tenantColumnName, Collection<ColumnBase> columns, PrimaryKeyDef pk, IdentityDef identity, Collection<IndexDef> indexes, Collection<ForeignKeyConstraint> fkConstraints, SessionVariableDef accessControlVar, Tablespace tablespace, List<IDatabaseObject> dependencies, Map<String,String> tags, Collection<GroupPrivilege> privileges, List<Migration> migrations)
Public constructorView(String schemaName, String objectName, int version, String selectClause, Collection<IDatabaseObject> dependencies, Map<String,String> tags, Collection<GroupPrivilege> privileges, List<Migration> migrations)
Protected constructor -
Uses of IDatabaseObject in com.ibm.fhir.schema.control
Methods in com.ibm.fhir.schema.control with parameters of type IDatabaseObject Modifier and Type Method Description protected void
FhirSchemaGenerator. addResourceTables(PhysicalDataModel model, IDatabaseObject... dependency)
Add the collection of tables for each of the listed FHIR resource typesMethod parameters in com.ibm.fhir.schema.control with type arguments of type IDatabaseObject Modifier and Type Method Description void
FhirResourceTableGroup. addDateValues(List<IDatabaseObject> group, String prefix)
CREATE TABLE device_date_values ( row_id BIGINT NOT NULL, parameter_name_id INT NOT NULL, date_start TIMESTAMP, date_end TIMESTAMP, resource_id BIGINT NOT NULL ) ; CREATE INDEX idx_device_date_values_pser ON device_date_values(parameter_name_id, date_start, date_end, resource_id); CREATE INDEX idx_device_date_values_pesr ON device_date_values(parameter_name_id, date_end, date_start, resource_id); CREATE INDEX idx_device_date_values_rpse ON device_date_values(resource_id, parameter_name_id, date_start, date_end); ALTER TABLE device_date_values ADD CONSTRAINT fk_device_date_values_pn FOREIGN KEY (parameter_name_id) REFERENCES parameter_names; ALTER TABLE device_date_values ADD CONSTRAINT fk_device_date_values_r FOREIGN KEY (resource_id) REFERENCES device_resources;void
FhirResourceTableGroup. addLatLngValues(List<IDatabaseObject> group, String prefix)
CREATE TABLE device_latlng_values ( row_id BIGINT NOT NULL, parameter_name_id INT NOT NULL, latitude_value DOUBLE, longitude_value DOUBLE, resource_id BIGINT NOT NULL ) CREATE INDEX idx_device_latlng_values_pnnlv ON device_latlng_values(parameter_name_id, latitude_value, resource_id); CREATE INDEX idx_device_latlng_values_pnnhv ON device_latlng_values(parameter_name_id, longitude_value, resource_id); CREATE INDEX idx_device_latlng_values_rplat ON device_latlng_values(resource_id, parameter_name_id, latitude_value); CREATE INDEX idx_device_latlng_values_rplng ON device_latlng_values(resource_id, parameter_name_id, longitude_value); ALTER TABLE device_latlng_values ADD CONSTRAINT fk_device_latlng_values_pn FOREIGN KEY (parameter_name_id) REFERENCES parameter_names; ALTER TABLE device_latlng_values ADD CONSTRAINT fk_device_latlng_values_r FOREIGN KEY (resource_id) REFERENCES device_resources;void
FhirResourceTableGroup. addListLogicalResourceItems(List<IDatabaseObject> group, String prefix)
Special case for LIST resources where we attach a child table to its LIST_LOGICAL_RESOURCES to support usage of the list items in search queries.void
FhirResourceTableGroup. addLogicalResources(List<IDatabaseObject> group, String prefix)
Add the logical_resources table definition for the given resource prefixvoid
FhirResourceTableGroup. addNumberValues(List<IDatabaseObject> group, String prefix)
-- ---------------------------------------------------------------------------- -- -- ---------------------------------------------------------------------------- CREATE TABLE device_number_values ( row_id BIGINT NOT NULL, parameter_name_id INT NOT NULL, number_value DOUBLE, resource_id BIGINT NOT NULL ) ; CREATE INDEX idx_device_number_values_pnnv ON device_number_values(parameter_name_id, number_value, resource_id); CREATE INDEX idx_device_number_values_rps ON device_number_values(resource_id, parameter_name_id, number_value); ALTER TABLE device_number_values ADD CONSTRAINT fk_device_number_values_pn FOREIGN KEY (parameter_name_id) REFERENCES parameter_names; ALTER TABLE device_number_values ADD CONSTRAINT fk_device_number_values_r FOREIGN KEY (resource_id) REFERENCES device_resources;void
FhirResourceTableGroup. addPatientCurrentRefs(List<IDatabaseObject> group, String prefix)
Add the extension table used to support references to the current resources lists defined by the spec: https://www.hl7.org/fhir/lifecycle.html#currentvoid
FhirResourceTableGroup. addQuantityValues(List<IDatabaseObject> group, String prefix)
CREATE TABLE device_quantity_values ( row_id BIGINT NOT NULL, parameter_name_id INT NOT NULL, code VARCHAR(255 OCTETS) NOT NULL, quantity_value DOUBLE, quantity_value_low DOUBLE, quantity_value_high DOUBLE, code_system_id INT, resource_id BIGINT NOT NULL ) ; CREATE INDEX idx_device_quantity_values_pnnv ON device_quantity_values(parameter_name_id, code, quantity_value, resource_id, code_system_id); CREATE INDEX idx_device_quantity_values_rps ON device_quantity_values(resource_id, parameter_name_id, code, quantity_value, code_system_id); CREATE INDEX idx_device_quantity_values_pclhsr ON device_quantity_values(parameter_name_id, code, quantity_value_low, quantity_value_high, code_system_id, resource_id); CREATE INDEX idx_device_quantity_values_pchlsr ON device_quantity_values(parameter_name_id, code, quantity_value_high, quantity_value_low, code_system_id, resource_id); CREATE INDEX idx_device_quantity_values_rpclhs ON device_quantity_values(resource_id, parameter_name_id, code, quantity_value_low, quantity_value_high, code_system_id); CREATE INDEX idx_device_quantity_values_rpchls ON device_quantity_values(resource_id, parameter_name_id, code, quantity_value_high, quantity_value_low, code_system_id); ALTER TABLE device_quantity_values ADD CONSTRAINT fk_device_quantity_values_pn FOREIGN KEY (parameter_name_id) REFERENCES parameter_names; ALTER TABLE device_quantity_values ADD CONSTRAINT fk_device_quantity_values_r FOREIGN KEY (resource_id) REFERENCES device_resources;void
FhirResourceTableGroup. addResources(List<IDatabaseObject> group, String prefix)
Add the resources table definitionTable
FhirResourceTableGroup. addResourceTokenRefs(List<IDatabaseObject> group, String prefix)
parameter_name_id INT NOT NULL, code_system_id INT NOT NULL, token_value VARCHAR(255 OCTETS), resource_id BIGINT NOT NULL composite_id SMALLINT ) ; /** New schema for issue #1366.void
FhirResourceTableGroup. addStrValues(List<IDatabaseObject> group, String prefix)
Add the STR_VALUES table for the given resource name prefixvoid
FhirResourceTableGroup. addTokenValuesView(List<IDatabaseObject> group, String prefix)
View created over common_token_values and resource_token_refs to hide the schema change (V0006 issue 1366) as much as possible from the search query generation.Constructor parameters in com.ibm.fhir.schema.control with type arguments of type IDatabaseObject Constructor Description FhirResourceTableGroup(PhysicalDataModel model, String schemaName, boolean multitenant, SessionVariableDef sessionVariable, Set<IDatabaseObject> procedureDependencies, Tablespace fhirTablespace, Collection<GroupPrivilege> privileges)
Public constructor
-