AOOSModel: Major refactor
[AOOS.git] / lib / AOOSInterfaces.php
blob986aecfe40dc021330538256d7a1a4f3fac5c6f3
1 <?php
3 /**
4 * Interfaces
5 * @author Sebastian Skejø
6 */
8 /**
9 */
10 interface AOOSStorageInterface
12 /**
13 * Sets table to manipulate data in
15 public function setTable($table);
17 /**
18 * Inserts values into database
20 public function insert($values);
22 /**
23 * Removes values from database
25 public function remove($where);
27 /**
28 * Updates values in database
30 public function update($values, $where, $limit = 0);
32 /**
33 * Returns an array with all fields $fields that matches $where
35 public function select($fields, $where, $order, $limit);
37 /**
38 * Returns an integer representing the number of rows
40 public function numRows($where = null);
42 /**
43 * Creates a table
45 public function create($fields, $props);
47 /**
48 * Drops a table
50 public function drop();
53 /**
54 * AOOSModelPropertyInterface
56 interface AOOSModelConstraintInterface {
57 static public function name();
59 static public function numArgs();
61 static public function check($args, $value);
63 static public function execute($args, $value);