Class FhirBucketSchema


  • public class FhirBucketSchema
    extends java.lang.Object
    Defines and manages the little schema used to coordinate multiple servers and maintain a list of resource logical ids generated by the FHIR server.
    • Constructor Detail

      • FhirBucketSchema

        public FhirBucketSchema​(java.lang.String schemaName)
        Public constructor
        Parameters:
        schemaName -
    • Method Detail

      • constructModel

        public void constructModel​(PhysicalDataModel pdm)
        Create the model
        Parameters:
        pdm -
      • addLoaderInstances

        protected Table addLoaderInstances​(PhysicalDataModel pdm)
        Add the definition of the BUCKET_PATHS table to the model
        Parameters:
        pdm -
        Returns:
      • addBucketPaths

        protected Table addBucketPaths​(PhysicalDataModel pdm)
        Add the definition of the BUCKET_PATHS table to the model
        Parameters:
        pdm -
        Returns:
      • addResourceBundles

        protected Table addResourceBundles​(PhysicalDataModel pdm)
        Add the definition of the RESOURCE_BUNDLES table to the model
        Parameters:
        pdm -
        Returns:
      • addResourceBundleLoads

        protected Table addResourceBundleLoads​(PhysicalDataModel pdm)
        Track each time we attempt to load a bundle. When recycleSeconds is set (see Main), the same bundle can be loaded over and over, so this allows us to track performance over time. Each LOGICAL_INSTANCES record created from a particular load run is also tied to this table via its RESOURCE_BUNDLE_LOAD_ID foreign key
        Parameters:
        pdm -
        Returns:
      • addResourceTypes

        protected Table addResourceTypes​(PhysicalDataModel pdm)
        Add the definition of the RESOURCE_TYPES table to the model
        Parameters:
        pdm -
        Returns:
      • addLogicalResources

        protected void addLogicalResources​(PhysicalDataModel pdm,
                                           Table resourceTypes)
        Add the LOGICAL_RESOURCES table definition to the physical data model
        Parameters:
        pdm -
        resourceTypes -
      • addResourceBundleErrors

        protected void addResourceBundleErrors​(PhysicalDataModel pdm)
        Add the RESOURCE_BUNDLE_ERRORS table to the PhysicalDataModel
        Parameters:
        pdm -
      • applyModel

        protected void applyModel​(IDatabaseAdapter adapter,
                                  PhysicalDataModel pdm)
        Apply the model to the database. Will generate the DDL and execute it
        Parameters:
        pdm -