blob: 21eba3e75c2ce7527cbc073325c1bf95d0c31b7a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
<?php
/**
* TSqlMapStatement, TSqlMapInsert, TSqlMapUpdate, TSqlMapDelete,
* TSqlMapSelect and TSqlMapSelectKey classes file.
*
* @author Wei Zhuo <weizhuo[at]gmail[dot]com>
* @link http://www.pradosoft.com/
* @copyright Copyright © 2005-2014 PradoSoft
* @license http://www.pradosoft.com/license/
* @package Prado\Data\SqlMap\Configuration
*/
namespace Prado\Data\SqlMap\Configuration;
use Prado\Data\SqlMap\DataMapper\TSqlMapConfigurationException;
/**
* TSqlMapSelect corresponds to the <selectKey> element.
*
* @author Wei Zhuo <weizho[at]gmail[dot]com>
* @package Prado\Data\SqlMap\Configuration
* @since 3.1
*/
class TSqlMapSelectKey extends TSqlMapStatement
{
private $_type = 'post';
private $_property;
/**
* @return string select generated key type, 'post' or 'pre'.
*/
public function getType()
{
return $this->_type;
}
/**
* @param string select generated key type, 'post' or 'pre'.
*/
public function setType($value)
{
$this->_type = strtolower($value) == 'post' ? 'post' : 'pre';
}
/**
* @return string property name for the generated key.
*/
public function getProperty()
{
return $this->_property;
}
/**
* @param string property name for the generated key.
*/
public function setProperty($value)
{
$this->_property = $value;
}
/**
* @throws TSqlMapConfigurationException extends is unsupported.
*/
public function setExtends($value)
{
throw new TSqlMapConfigurationException('sqlmap_can_not_extend_select_key');
}
/**
* @return boolean true if key is generated after insert command, false otherwise.
*/
public function getIsAfter()
{
return $this->_type == 'post';
}
}
|