co3
package docs¶
Index Module Index Search Page
Access wrapper class for complex queries and easy integration with Composer tables. |
|
CO3: COllate, COllect, COmpose - conversion & DB insertion base |
|
Generic Database definition |
|
Indexer class |
|
Management wrapper class for table groupings. |
|
Mapper base class for housing schema components and managing relationships between CO3 types and storage components (of type C). |
|
Engine base class. |
Overview¶
co3
is a package for file conversion and associated database operations. The CO3
base class
provides a standard interface for performing conversions, preparing inserts, and
interacting with database schemas that mirror the class hierarchy.
Simplified description of the operational model:
Goal: interact with a storage medium (database, pickled structure, VSS framework) with a known schema.
Accessor to provide access to stored items
Composer to compose common access points (e.g., JOINed tables)
Indexer to index/cache access queries
Manager to manage storage state (e.g., supported inserts, database syncs)
Collector to collect data for updating storage state
Database to collect data for updating storage state
Mapper to collect data for updating storage state
Component to collect data for updating storage state
CO3 is an abstract base class that makes it easy to integrate this model with object hierarchies that mirror a storage schema.
Detailed structural breakdown¶
There are a few pillars of the CO3 model that meaningfully group up functionality:
Database: generic to a Component type, provides basic connection to a database at a specific address/location. The explicit Component type makes it easy to hook into appropriately typed functional objects:
Manager: generic to a Component and Database type, provides a supported set of state-modifying operations to a constituent database
Accessor: generic to a Component and Database type, provides a supported set of state inspection operations on a constituent database
Indexer:
Mapper: generic to a Component, serves as the fundamental connective component between types in the data representation hierarchy (CO3 subclasses) and database Components.