aboutsummaryrefslogtreecommitdiff
path: root/classes
diff options
context:
space:
mode:
authorSilvio <silvio@devlet.com.br>2010-06-07 17:31:58 -0300
committerSilvio <silvio@devlet.com.br>2010-06-07 17:31:58 -0300
commitb30bac3f31c602fd2cb3a9b2a03501a68a9c7800 (patch)
treea952ee8f8bf59fb2e854e2e25e2c707be60257af /classes
parent7571cef86ee48c928e615bc0822c8ab7e4eb2fd3 (diff)
downloadcinisis-b30bac3f31c602fd2cb3a9b2a03501a68a9c7800.tar.gz
cinisis-b30bac3f31c602fd2cb3a9b2a03501a68a9c7800.tar.bz2
Sorting code
Diffstat (limited to 'classes')
-rw-r--r--classes/IsisDb.php63
1 files changed, 63 insertions, 0 deletions
diff --git a/classes/IsisDb.php b/classes/IsisDb.php
new file mode 100644
index 0000000..1e63f38
--- /dev/null
+++ b/classes/IsisDb.php
@@ -0,0 +1,63 @@
+<?php
+
+/**
+ * Generic interface for reading Isis databases.
+ */
+interface IsisDb {
+ /**
+ * Constructor.
+ *
+ * The implementation constructor should accept a database
+ * schema definition and setup the appropriate db resource.
+ *
+ * @param $schema
+ * High level database schema description.
+ *
+ * @return
+ * Database resource or FALSE in case of error.
+ *
+ * @see default_schema()
+ */
+ public function __construct($schema);
+
+ /**
+ * Read an entry from the database.
+ *
+ * @param $id
+ * Database row id.
+ */
+ public function read($id);
+
+ /**
+ * Return number of rows in the database.
+ *
+ * @return
+ * Number of rows in the database.
+ */
+ public function rows();
+
+ /**
+ * Return an example database schema.
+ *
+ * The example schema should have all information the implementation
+ * needs to be able to open and read a database.
+ *
+ * @return
+ * Array with a sample database schema.
+ */
+ public function example();
+
+ /**
+ * Configuration check.
+ *
+ * @param $schema
+ * Database schema to check.
+ *
+ * @param $section
+ * Configuration section.
+ *
+ * @return
+ * Database schema or FALSE if error.
+ */
+ function check($schema, $section = NULL);
+}