init
This commit is contained in:
164
mysyde/common/interfaces/GenericCollectionInterface.php
Normal file
164
mysyde/common/interfaces/GenericCollectionInterface.php
Normal file
@@ -0,0 +1,164 @@
|
||||
<?php
|
||||
|
||||
namespace DynCom\mysyde\common\interfaces;
|
||||
use Countable;
|
||||
use IteratorAggregate;
|
||||
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: Micha
|
||||
* Date: 14.01.2015
|
||||
* Time: 03:46
|
||||
*/
|
||||
interface GenericCollectionInterface extends IteratorAggregate, Countable
|
||||
{
|
||||
|
||||
/**
|
||||
* @return GenericCollectionInterface
|
||||
*/
|
||||
public function getEmptyCollection();
|
||||
|
||||
/**
|
||||
* @return string class-name for collection entities
|
||||
*/
|
||||
public function getEntryClassName();
|
||||
|
||||
/**
|
||||
* @return array Array with entity-fields (db-mapped fields)
|
||||
*/
|
||||
public function getFieldsArray();
|
||||
|
||||
/**
|
||||
* @param mixed $instance An instance of the collection-entry class
|
||||
* @param bool $idCheck Flag whether comparisons should be id-only, default FALSE
|
||||
*
|
||||
* @return bool Success or failure
|
||||
*/
|
||||
public function add($instance, $idCheck);
|
||||
|
||||
/**
|
||||
* @param mixed $instance An instance of the collection-entry class
|
||||
* @param bool $idCheck Flag whether comparisons should be id-only, default FALSE
|
||||
*
|
||||
* @return bool Success or failure
|
||||
*/
|
||||
public function remove($instance, $idCheck);
|
||||
|
||||
/**
|
||||
* @param int $id
|
||||
*
|
||||
* @return mixed An instance of the collection-entry class
|
||||
*/
|
||||
public function getByID($id);
|
||||
|
||||
/**
|
||||
* @param array $uniqueKeyArray An array specifying an alternative primary key, of the form:
|
||||
* array('keyField1Name'=>'keyField1Value','keyField2Name'=>'keyField2Value'...);
|
||||
*
|
||||
* @return mixed An instance of the collection-entry class
|
||||
*/
|
||||
public function getByAltPrimary(array $uniqueKeyArray);
|
||||
|
||||
|
||||
/**
|
||||
* @return array The entire collection as array
|
||||
*/
|
||||
public function getAllAsArray();
|
||||
|
||||
/**
|
||||
* @param array $criteria Filtering-criteria as array in disjunctive normal form:
|
||||
* array(
|
||||
* array(
|
||||
* array('fieldName','comparator','fieldValue'),
|
||||
* **AND**
|
||||
* array('andFieldName','andComparator','andFieldValue')
|
||||
* ...
|
||||
* ),
|
||||
* **OR**
|
||||
* array(
|
||||
* array('orFieldName','orComparator','orFieldValue'),
|
||||
* **AND**
|
||||
* array('andOrFieldName','andOrComparator','andOrFieldValue')
|
||||
* ...
|
||||
* )
|
||||
* ...
|
||||
* )
|
||||
*
|
||||
* @return GenericCollectionInterface An instance of a collection-class for the object in the repository
|
||||
*/
|
||||
public function getByCriteria(array $criteria);
|
||||
|
||||
/**
|
||||
* @param array $criteria Filtering-criteria as array in disjunctive normal form:
|
||||
* array(
|
||||
* array(
|
||||
* array('fieldName','comparator','fieldValue'),
|
||||
* **AND**
|
||||
* array('andFieldName','andComparator','andFieldValue')
|
||||
* ...
|
||||
* ),
|
||||
* **OR**
|
||||
* array(
|
||||
* array('orFieldName','orComparator','orFieldValue'),
|
||||
* **AND**
|
||||
* array('andOrFieldName','andOrComparator','andOrFieldValue')
|
||||
* ...
|
||||
* )
|
||||
* ...
|
||||
* )
|
||||
*
|
||||
* @return array $collection Subset of the current collection as instance of own concrete
|
||||
* collection class
|
||||
*/
|
||||
public function getByCriteriaAsArray(array $criteria);
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getBaseTableName();
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getNullObject();
|
||||
|
||||
/**
|
||||
* @param array $arr
|
||||
*
|
||||
* @return GenericCollectionInterface
|
||||
*/
|
||||
public function mapArrayToNewCollection(array $arr);
|
||||
|
||||
/**
|
||||
* @param array $fields
|
||||
* @return array
|
||||
*/
|
||||
public function getFieldData(array $fields);
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getFirst();
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function rewind();
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function valid();
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function current();
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function next();
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user