co3 package docs

Index Module Index Search Page

co3.Accessor

Access wrapper class for complex queries and easy integration with Composer tables.

co3.Collector

co3.CO3

CO3: COllate, COllect, COmpose - conversion & DB insertion base

co3.Database

Generic Database definition

co3.Indexer

Indexer class

co3.Manager

Management wrapper class for table groupings.

co3.Mapper

Mapper base class for housing schema components and managing relationships between CO3 types and storage components (of type C).

co3.Component

co3.Schema

co3.Engine

Engine base class.

Contents

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.