70 lines
1.4 KiB
PHP
70 lines
1.4 KiB
PHP
<?php
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
exit;
|
|
}
|
|
|
|
/**
|
|
* WC Data Store Interface
|
|
*
|
|
* @version 3.0.0
|
|
* @category Interface
|
|
* @author WooThemes
|
|
*/
|
|
interface WC_Object_Data_Store_Interface {
|
|
/**
|
|
* Method to create a new record of a WC_Data based object.
|
|
* @param WC_Data &$data
|
|
*/
|
|
public function create( &$data );
|
|
|
|
/**
|
|
* Method to read a record. Creates a new WC_Data based object.
|
|
* @param WC_Data &$data
|
|
*/
|
|
public function read( &$data );
|
|
|
|
/**
|
|
* Updates a record in the database.
|
|
* @param WC_Data &$data
|
|
*/
|
|
public function update( &$data );
|
|
|
|
/**
|
|
* Deletes a record from the database.
|
|
* @param WC_Data &$data
|
|
* @param array $args Array of args to pass to the delete method.
|
|
* @return bool result
|
|
*/
|
|
public function delete( &$data, $args = array() );
|
|
|
|
/**
|
|
* Returns an array of meta for an object.
|
|
* @param WC_Data &$data
|
|
* @return array
|
|
*/
|
|
public function read_meta( &$data );
|
|
|
|
/**
|
|
* Deletes meta based on meta ID.
|
|
* @param WC_Data &$data
|
|
* @param object $meta (containing at least ->id)
|
|
* @return array
|
|
*/
|
|
public function delete_meta( &$data, $meta );
|
|
|
|
/**
|
|
* Add new piece of meta.
|
|
* @param WC_Data &$data
|
|
* @param object $meta (containing ->key and ->value)
|
|
* @return int meta ID
|
|
*/
|
|
public function add_meta( &$data, $meta );
|
|
|
|
/**
|
|
* Update meta.
|
|
* @param WC_Data &$data
|
|
* @param object $meta (containing ->id, ->key and ->value)
|
|
*/
|
|
public function update_meta( &$data, $meta );
|
|
}
|