| DerbyParameterNamesDAO | 
 For R4 we have replaced the old Derby (Java) stored procedure with
 plain old JDBC statements - much simpler and easier to debug. 
 | 
| DistributedPostgresParamValueProcessor | 
 For the DISTRIBUTED schema variant used on databases such as Citus, we
 can't use IDENTITY columns. 
 | 
| FhirRefSequenceDAOImpl | 
 DAO to obtain the next value from FHIR_REF_SEQUENCE 
 | 
| ParameterNameDAOImpl | 
 Database interaction for parameter_names. 
 | 
| PlainBatchParameterProcessor | 
 Processes batched parameters by pushing the values to various
 JDBC statements based on the plain variant of the schema 
 | 
| PlainDerbyParamValueProcessor | 
 Derby variant of the plain schema param value processor which is needed because Derby
 needs slightly different syntax for some queries and in particular, we need to be 
 very careful issuing both SQL and DML in a specific order to avoid deadlocks due
 to compatibility issues with shared (S) and exclusive (X) locks in Derby. 
 | 
| PlainParamValueProcessor | 
 Loads search parameter values into the target PostgreSQL database using
 the plain (non-sharded) schema variant. 
 | 
| PlainPostgresParameterBatch | 
 Parameter batch statements configured for a given resource type
 using the plain schema variant 
 | 
| PlainPostgresParamValueProcessor | 
 PostgreSQL variant of the remote index message handler 
 | 
| PlainPostgresSystemParameterBatch | 
 Batch insert statements for system-level parameters 
 | 
| PreparedStatementWrapper | 
 Wraps a PreparedStatement together with the statement text for easier
 logging when there are errors 
 |