config=$config;
$this->connection=$connection;
}
/*! insert record in storage
@param data
DataAction object
@param source
DataRequestConfig object
*/
abstract function insert($data,$source);
/*! delete record from storage
@param data
DataAction object
@param source
DataRequestConfig object
*/
abstract function delete($data,$source);
/*! update record in storage
@param data
DataAction object
@param source
DataRequestConfig object
*/
abstract function update($data,$source);
/*! select record from storage
@param source
DataRequestConfig object
*/
abstract function select($source);
/*! get size of storage
@param source
DataRequestConfig object
*/
abstract function get_size($source);
/*! get all variations of field in storage
@param name
name of field
@param source
DataRequestConfig object
*/
abstract function get_variants($name,$source);
/*! checks if there is a custom sql string for specified db operation
@param name
name of DB operation
@param data
hash of data
@return
sql string
*/
public function get_sql($name,$data){
return ""; //custom sql not supported by default
}
/*! begins DB transaction
*/
public function begin_transaction(){
throw new Exception("Data wrapper not supports transactions.");
}
/*! commits DB transaction
*/
public function commit_transaction(){
throw new Exception("Data wrapper not supports transactions.");
}
/*! rollbacks DB transaction
*/
public function rollback_transaction(){
throw new Exception("Data wrapper not supports transactions.");
}
}