|
TYPO3 API
SVNRelease
|
00001 <?php 00002 /*************************************************************** 00003 * Copyright notice 00004 * 00005 * (c) 2009 Jochen Rau <jochen.rau@typoplanet.de> 00006 * All rights reserved 00007 * 00008 * This class is a backport of the corresponding class of FLOW3. 00009 * All credits go to the v5 team. 00010 * 00011 * This script is part of the TYPO3 project. The TYPO3 project is 00012 * free software; you can redistribute it and/or modify 00013 * it under the terms of the GNU General Public License as published by 00014 * the Free Software Foundation; either version 2 of the License, or 00015 * (at your option) any later version. 00016 * 00017 * The GNU General Public License can be found at 00018 * http://www.gnu.org/copyleft/gpl.html. 00019 * 00020 * This script is distributed in the hope that it will be useful, 00021 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00022 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00023 * GNU General Public License for more details. 00024 * 00025 * This copyright notice MUST APPEAR in all copies of the script! 00026 ***************************************************************/ 00027 00028 /** 00029 * Performs a join between two node-tuple sources. 00030 * 00031 * @package Extbase 00032 * @subpackage Persistence\QOM 00033 * @version $Id: Join.php 1729 2009-11-25 21:37:20Z stucki $ 00034 * @scope prototype 00035 */ 00036 class Tx_Extbase_Persistence_QOM_Join implements Tx_Extbase_Persistence_QOM_JoinInterface { 00037 00038 /** 00039 * @var Tx_Extbase_Persistence_QOM_SourceInterface 00040 */ 00041 protected $left; 00042 00043 /** 00044 * @var Tx_Extbase_Persistence_QOM_SourceInterface 00045 */ 00046 protected $right; 00047 00048 /** 00049 * @var integer 00050 */ 00051 protected $joinType; 00052 00053 /** 00054 * @var Tx_Extbase_Persistence_QOM_JoinConditionInterface 00055 */ 00056 protected $joinCondition; 00057 00058 /** 00059 * Constructs the Join instance 00060 * 00061 * @param Tx_Extbase_Persistence_QOM_SourceInterface $left the left node-tuple source; non-null 00062 * @param Tx_Extbase_Persistence_QOM_SourceInterface $right the right node-tuple source; non-null 00063 * @param string $joinType one of QueryObjectModelConstants.JCR_JOIN_TYPE_* 00064 * @param Tx_Extbase_Persistence_QOM_JoinConditionInterface $join Condition the join condition; non-null 00065 */ 00066 public function __construct(Tx_Extbase_Persistence_QOM_SourceInterface $left, Tx_Extbase_Persistence_QOM_SourceInterface $right, $joinType, Tx_Extbase_Persistence_QOM_JoinConditionInterface $joinCondition) { 00067 $this->left = $left; 00068 $this->right = $right; 00069 $this->joinType = $joinType; 00070 $this->joinCondition = $joinCondition; 00071 } 00072 00073 /** 00074 * Gets the left node-tuple source. 00075 * 00076 * @return Tx_Extbase_Persistence_QOM_SourceInterface the left source; non-null 00077 */ 00078 public function getLeft() { 00079 return $this->left; 00080 } 00081 00082 /** 00083 * Gets the right node-tuple source. 00084 * 00085 * @return Tx_Extbase_Persistence_QOM_SourceInterface the right source; non-null 00086 */ 00087 public function getRight() { 00088 return $this->right; 00089 } 00090 00091 /** 00092 * Gets the join type. 00093 * 00094 * @return string one of QueryObjectModelConstants.JCR_JOIN_TYPE_* 00095 */ 00096 public function getJoinType() { 00097 return $this->joinType; 00098 } 00099 00100 /** 00101 * Gets the join condition. 00102 * 00103 * @return JoinCondition the join condition; non-null 00104 */ 00105 public function getJoinCondition() { 00106 return $this->joinCondition; 00107 } 00108 00109 } 00110 00111 ?>
1.8.0