Ferreteria/v2/usage/db: Difference between revisions

From Woozle Writes Code
< Ferreteria‎ | v2‎ | usage
Jump to navigation Jump to search
m (Woozle moved page Ferreteria/pieces/db to Ferreteria/usage/db: this should be a usage guide)
(→‎Files: updated)
Line 6: Line 6:
* The Factory creates the appropriate '''Connection''' object, passes it the rest of the spec to initialize it, and returns it to the caller.
* The Factory creates the appropriate '''Connection''' object, passes it the rest of the spec to initialize it, and returns it to the caller.
==Files==
==Files==
These have ''not'' yet been committed to GitHub:
Core classes:
* {{ferreteria/code|db/db.php}}
* {{ferreteria/code|db/v2/db.php}}
* {{ferreteria/code|db/db-conn.php}}
* {{ferreteria/code|db/v2/db-conn.php}}: abstract database engine
* {{ferreteria/code|db/db-engine.php}}
** {{ferreteria/code|db/v2/db-conn-mysqli.php}}: implementation for mysqli library
* {{ferreteria/code|db/db-result.php}}
* tables:
** {{ferreteria/code|db/v2/tables/db-table.php}}: classes for basic table functionality
** {{ferreteria/code|db/v2/tables/db-table-keyed.php}}: tables with one or more unique key fields
* records:
** {{ferreteria/code|db/v2/records/db-records.php}}: classes for basic recordset functionality (may or may not be attached to a table)
** {{ferreteria/code|db/v2/records/db-records-keyed.php}}: records that self-identify with one or more unique key fields (can be updated in table)
 
Helpers:
* {{ferreteria/code|db/v2/db-ui.php}}: trait which adds support for admin interface functionality
 
This is only a partial list, but includes some of the most heavily-used files.
 
==Classes==
==Classes==
===primary===
===primary===

Revision as of 11:13, 15 September 2017

About

Databases in Ferreteria are managed through several sets of classes that work together. I am in the process of rewriting this module from scratch; information about the existing code is in /v1.

Rules

  • Each Connection should be requested from the static DBO Factory class by passing it a connection spec.
  • The Factory looks up which Connection class is needed for the type specified in the connection spec.
  • The Factory creates the appropriate Connection object, passes it the rest of the spec to initialize it, and returns it to the caller.

Files

Core classes:

Helpers:

This is only a partial list, but includes some of the most heavily-used files.

Classes

primary

helpers