TYPO3 API  SVNRelease
DomainObjectInterface.php
Go to the documentation of this file.
00001 <?php
00002 /***************************************************************
00003 *  Copyright notice
00004 *
00005 *  (c) 2009 Jochen Rau <jochen.rau@typoplanet.de>
00006 *  All rights reserved
00007 *
00008 *  This script is part of the TYPO3 project. The TYPO3 project is
00009 *  free software; you can redistribute it and/or modify
00010 *  it under the terms of the GNU General Public License as published by
00011 *  the Free Software Foundation; either version 2 of the License, or
00012 *  (at your option) any later version.
00013 *
00014 *  The GNU General Public License can be found at
00015 *  http://www.gnu.org/copyleft/gpl.html.
00016 *
00017 *  This script is distributed in the hope that it will be useful,
00018 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00019 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00020 *  GNU General Public License for more details.
00021 *
00022 *  This copyright notice MUST APPEAR in all copies of the script!
00023 ***************************************************************/
00024 
00025 /**
00026  * A Domain Object Interface. All domain objects which should be persisted need to implement the below interface.
00027  * Usually you will need to subclass Tx_Extbase_DomainObject_AbstractEntity and Tx_Extbase_DomainObject_AbstractValueObject
00028  * instead.
00029  *
00030  * @see Tx_Extbase_DomainObject_AbstractEntity
00031  * @see Tx_Extbase_DomainObject_AbstractValueObject
00032  *
00033  * @package Extbase
00034  * @subpackage DomainObject
00035  * @version $ID:$
00036  */
00037 interface Tx_Extbase_DomainObject_DomainObjectInterface {
00038 
00039     /**
00040      * Getter for uid.
00041      *
00042      * @return int the uid or NULL if none set yet.
00043      */
00044     public function getUid();
00045 
00046     /**
00047      * Setter for the pid.
00048      *
00049      * @return void
00050      */
00051     public function setPid($pid);
00052 
00053     /**
00054      * Getter for the pid.
00055      *
00056      * @return int The pid or NULL if none set yet.
00057      */
00058     public function getPid();
00059 
00060     /**
00061      * Returns TRUE if the object is new (the uid was not set, yet). Only for internal use
00062      *
00063      * @return boolean
00064      */
00065     public function _isNew();
00066 
00067     /**
00068      * Reconstitutes a property. Only for internal use.
00069      *
00070      * @param string $propertyName
00071      * @param string $value
00072      * @return void
00073      */
00074     public function _setProperty($propertyName, $value);
00075 
00076     /**
00077      * Returns the property value of the given property name. Only for internal use.
00078      *
00079      * @return mixed The propertyValue
00080      */
00081     public function _getProperty($propertyName);
00082 
00083     /**
00084      * Returns a hash map of property names and property values
00085      *
00086      * @return array The properties
00087      */
00088     public function _getProperties();
00089 
00090 }
00091 ?>