mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-05-09 20:12:14 +09:00
Updated code comments for PHPDocumentor - column classes
git-svn-id: http://xe-core.googlecode.com/svn/branches/luminous@12418 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
2334535831
commit
39c2f06aa7
11 changed files with 457 additions and 367 deletions
|
|
@ -44,6 +44,7 @@ if(!defined('__XE_LOADED_XML_CLASS__')){
|
||||||
*
|
*
|
||||||
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
||||||
* @package /classes/xml
|
* @package /classes/xml
|
||||||
|
* @version 0.1
|
||||||
*/
|
*/
|
||||||
class XmlQueryParser extends XmlParser {
|
class XmlQueryParser extends XmlParser {
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@
|
||||||
*
|
*
|
||||||
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
||||||
* @package /classes/xml/xmlquery
|
* @package /classes/xml/xmlquery
|
||||||
|
* @version 0.1
|
||||||
*/
|
*/
|
||||||
class DBParser
|
class DBParser
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@
|
||||||
*
|
*
|
||||||
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
||||||
* @package /classes/xml/xmlquery
|
* @package /classes/xml/xmlquery
|
||||||
|
* @version 0.1
|
||||||
*/
|
*/
|
||||||
class QueryParser {
|
class QueryParser {
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* ColumnTag class
|
* ColumnTag class
|
||||||
* Models the <column> tag inside an XML Query file
|
* Models the <column> tag inside an XML Query file
|
||||||
* Since the <column> tag supports different attributes depending on
|
* Since the <column> tag supports different attributes depending on
|
||||||
* the type of query (select, update, insert, delete) this is only
|
* the type of query (select, update, insert, delete) this is only
|
||||||
* the base class for the classes that will model each type <column> tag.
|
* the base class for the classes that will model each type <column> tag.
|
||||||
*
|
*
|
||||||
* @author Arnia Software
|
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
||||||
* @package /classes/xml/xmlquery/tags/column
|
* @package /classes/xml/xmlquery/tags/column
|
||||||
* @version 0.1
|
* @version 0.1
|
||||||
*/
|
*/
|
||||||
class ColumnTag {
|
class ColumnTag
|
||||||
|
{
|
||||||
/**
|
/**
|
||||||
* Column name
|
* Column name
|
||||||
* @var string
|
* @var string
|
||||||
|
|
@ -18,11 +19,12 @@
|
||||||
var $name;
|
var $name;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* constructor
|
* Constructor
|
||||||
* @param string $name
|
* @param string $name
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function ColumnTag($name){
|
function ColumnTag($name)
|
||||||
|
{
|
||||||
$this->name = $name;
|
$this->name = $name;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,21 +1,22 @@
|
||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* InsertColumnTag
|
* InsertColumnTag
|
||||||
* Models the <column> tag inside an XML Query file whose action is 'insert'
|
* Models the <column> tag inside an XML Query file whose action is 'insert'
|
||||||
*
|
*
|
||||||
* @author Arnia Software
|
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
||||||
* @package /classes/xml/xmlquery/tags/column
|
* @package /classes/xml/xmlquery/tags/column
|
||||||
* @version 0.1
|
* @version 0.1
|
||||||
*/
|
*/
|
||||||
class InsertColumnTag extends ColumnTag {
|
class InsertColumnTag extends ColumnTag
|
||||||
|
{
|
||||||
/**
|
/**
|
||||||
* argument
|
* Argument
|
||||||
* @var QueryArgument object
|
* @var QueryArgument object
|
||||||
*/
|
*/
|
||||||
var $argument;
|
var $argument;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* constructor
|
* Constructor
|
||||||
* @param object $column
|
* @param object $column
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
|
|
@ -26,15 +27,27 @@
|
||||||
$this->argument = new QueryArgument($column);
|
$this->argument = new QueryArgument($column);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the string to be output in the cache file
|
||||||
|
* used for instantiating an InsertExpression when a
|
||||||
|
* query is executed
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
function getExpressionString(){
|
function getExpressionString(){
|
||||||
return sprintf('new InsertExpression(\'%s\', ${\'%s_argument\'})'
|
return sprintf('new InsertExpression(\'%s\', ${\'%s_argument\'})'
|
||||||
, $this->name
|
, $this->name
|
||||||
, $this->argument->argument_name);
|
, $this->argument->argument_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the QueryArgument object associated with this INSERT statement
|
||||||
|
*
|
||||||
|
* @return QueryArgument
|
||||||
|
*/
|
||||||
function getArgument(){
|
function getArgument(){
|
||||||
return $this->argument;
|
return $this->argument;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
|
||||||
|
|
@ -1,31 +1,46 @@
|
||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* InsertColumnTagWithoutArgument
|
* InsertColumnTagWithoutArgument
|
||||||
* Models the <column> tag inside an XML Query file whose action is 'insert-select'
|
* Models the <column> tag inside an XML Query file whose action is 'insert-select'
|
||||||
*
|
*
|
||||||
* @author Arnia Software
|
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
||||||
* @package /classes/xml/xmlquery/tags/column
|
* @package /classes/xml/xmlquery/tags/column
|
||||||
* @version 0.1
|
* @version 0.1
|
||||||
*/
|
*/
|
||||||
class InsertColumnTagWithoutArgument extends ColumnTag {
|
class InsertColumnTagWithoutArgument extends ColumnTag
|
||||||
|
{
|
||||||
/**
|
/**
|
||||||
* constructor
|
* Constructor
|
||||||
|
*
|
||||||
* @param object $column
|
* @param object $column
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function InsertColumnTagWithoutArgument($column) {
|
function InsertColumnTagWithoutArgument($column)
|
||||||
|
{
|
||||||
parent::ColumnTag($column->attrs->name);
|
parent::ColumnTag($column->attrs->name);
|
||||||
$dbParser = DB::getParser();
|
$dbParser = DB::getParser();
|
||||||
$this->name = $dbParser->parseColumnName($this->name);
|
$this->name = $dbParser->parseColumnName($this->name);
|
||||||
}
|
}
|
||||||
|
|
||||||
function getExpressionString(){
|
/**
|
||||||
|
* Returns the string to be output in the cache file
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
function getExpressionString()
|
||||||
|
{
|
||||||
return sprintf('new Expression(\'%s\')', $this->name);
|
return sprintf('new Expression(\'%s\')', $this->name);
|
||||||
}
|
}
|
||||||
|
|
||||||
function getArgument(){
|
/**
|
||||||
return null;
|
* Returns the QueryArgument object associated with this INSERT statement
|
||||||
|
*
|
||||||
|
* @return null
|
||||||
|
*/
|
||||||
|
function getArgument()
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,13 @@
|
||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* InsertColumnsTag class
|
* InsertColumnsTag class
|
||||||
* Models the <column> tag inside an XML Query file whose action is 'insert'
|
* Models the <columns> tag inside an XML Query file whose action is 'insert'
|
||||||
*
|
*
|
||||||
* @author Arnia Software
|
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
||||||
* @package /classes/xml/xmlquery/tags/column
|
* @package /classes/xml/xmlquery/tags/column
|
||||||
* @version 0.1
|
* @version 0.1
|
||||||
*/
|
*/
|
||||||
class InsertColumnsTag{
|
class InsertColumnsTag{
|
||||||
/**
|
/**
|
||||||
* Column list
|
* Column list
|
||||||
* @var array value is InsertColumnTag object
|
* @var array value is InsertColumnTag object
|
||||||
|
|
@ -15,11 +15,12 @@
|
||||||
var $columns;
|
var $columns;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* constructor
|
* Constructor
|
||||||
* @param array|string $xml_columns
|
* @param array|string $xml_columns
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function InsertColumnsTag($xml_columns) {
|
function InsertColumnsTag($xml_columns)
|
||||||
|
{
|
||||||
$this->columns = array();
|
$this->columns = array();
|
||||||
|
|
||||||
if(!$xml_columns)
|
if(!$xml_columns)
|
||||||
|
|
@ -38,7 +39,8 @@
|
||||||
* InsertColumnTag object to string
|
* InsertColumnTag object to string
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
function toString(){
|
function toString()
|
||||||
|
{
|
||||||
$output_columns = 'array(' . PHP_EOL;
|
$output_columns = 'array(' . PHP_EOL;
|
||||||
foreach($this->columns as $column){
|
foreach($this->columns as $column){
|
||||||
$output_columns .= $column->getExpressionString() . PHP_EOL . ',';
|
$output_columns .= $column->getExpressionString() . PHP_EOL . ',';
|
||||||
|
|
@ -52,7 +54,8 @@
|
||||||
* Return argument list
|
* Return argument list
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
function getArguments(){
|
function getArguments()
|
||||||
|
{
|
||||||
$arguments = array();
|
$arguments = array();
|
||||||
foreach($this->columns as $column){
|
foreach($this->columns as $column){
|
||||||
$arguments[] = $column->getArgument();
|
$arguments[] = $column->getArgument();
|
||||||
|
|
@ -60,6 +63,6 @@
|
||||||
return $arguments;
|
return $arguments;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
||||||
|
|
@ -1,30 +1,33 @@
|
||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* SelectColumnTag
|
* SelectColumnTag
|
||||||
* Models the <column> tag inside an XML Query file whose action is 'select'
|
* Models the <column> tag inside an XML Query file whose action is 'select'
|
||||||
*
|
*
|
||||||
* @author Arnia Software
|
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
||||||
* @package /classes/xml/xmlquery/tags/column
|
* @package /classes/xml/xmlquery/tags/column
|
||||||
* @version 0.1
|
* @version 0.1
|
||||||
*/
|
*/
|
||||||
class SelectColumnTag extends ColumnTag{
|
class SelectColumnTag extends ColumnTag
|
||||||
|
{
|
||||||
/**
|
/**
|
||||||
* alias
|
* Column alias
|
||||||
* @var string
|
* @var string
|
||||||
*/
|
*/
|
||||||
var $alias;
|
var $alias;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* click count status
|
* Click count status
|
||||||
* @var bool
|
* @var bool
|
||||||
*/
|
*/
|
||||||
var $click_count;
|
var $click_count;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* constructor
|
* Constructor
|
||||||
* @param string|object $column
|
* @param string|object $column
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function SelectColumnTag($column){
|
function SelectColumnTag($column)
|
||||||
|
{
|
||||||
if ($column == "*" || $column->attrs->name == '*')
|
if ($column == "*" || $column->attrs->name == '*')
|
||||||
{
|
{
|
||||||
parent::ColumnTag(NULL);
|
parent::ColumnTag(NULL);
|
||||||
|
|
@ -41,6 +44,16 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the string to be output in the cache file
|
||||||
|
*
|
||||||
|
* A select column tag in an XML query can be used for:
|
||||||
|
* - a star expression: SELECT *
|
||||||
|
* - a click count expression: SELECT + UPDATE
|
||||||
|
* - any other select expression (column name, function call etc).
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
function getExpressionString(){
|
function getExpressionString(){
|
||||||
if($this->name == '*') return "new StarExpression()";
|
if($this->name == '*') return "new StarExpression()";
|
||||||
if($this->click_count)
|
if($this->click_count)
|
||||||
|
|
@ -50,4 +63,4 @@
|
||||||
$dbParser = DB::getParser();
|
$dbParser = DB::getParser();
|
||||||
return sprintf('new SelectExpression(\'%s\'%s)', $this->name, $this->alias ? ', \''.$dbParser->escape($this->alias) .'\'': '');
|
return sprintf('new SelectExpression(\'%s\'%s)', $this->name, $this->alias ? ', \''.$dbParser->escape($this->alias) .'\'': '');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,14 @@
|
||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* SelectColumnTag class
|
* SelectColumnsTag class
|
||||||
|
* Models the <columns> tag inside an XML Query file whose action is 'select'
|
||||||
*
|
*
|
||||||
* @author Arnia Software
|
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
||||||
* @package /classes/xml/xmlquery/tags/column
|
* @package /classes/xml/xmlquery/tags/column
|
||||||
* @version 0.1
|
* @version 0.1
|
||||||
*/
|
*/
|
||||||
class SelectColumnsTag {
|
class SelectColumnsTag
|
||||||
|
{
|
||||||
/**
|
/**
|
||||||
* Column list
|
* Column list
|
||||||
* @var array value is SelectColumnTag object
|
* @var array value is SelectColumnTag object
|
||||||
|
|
@ -14,11 +16,14 @@
|
||||||
var $columns;
|
var $columns;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* constructor
|
* Constructor
|
||||||
* @param Xml_Node_ $xml_columns
|
*
|
||||||
|
* @param $xml_columns_tag
|
||||||
|
* @internal param \Xml_Node_ $xml_columns
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function SelectColumnsTag($xml_columns_tag){
|
function SelectColumnsTag($xml_columns_tag)
|
||||||
|
{
|
||||||
if (!$xml_columns_tag)
|
if (!$xml_columns_tag)
|
||||||
$xml_columns_tag = new Xml_Node_();
|
$xml_columns_tag = new Xml_Node_();
|
||||||
|
|
||||||
|
|
@ -46,15 +51,17 @@
|
||||||
if(!is_array($xml_queries)) $xml_queries = array($xml_queries);
|
if(!is_array($xml_queries)) $xml_queries = array($xml_queries);
|
||||||
|
|
||||||
foreach($xml_queries as $column){
|
foreach($xml_queries as $column){
|
||||||
$this->columns[] = new QueryTag($column, true);
|
$this->columns[] = new QueryTag($column, TRUE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* SelectColumnTag object to string
|
* Returns the string to be output in the cache file
|
||||||
|
*
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
function toString(){
|
function toString()
|
||||||
|
{
|
||||||
$output_columns = 'array(' . PHP_EOL;
|
$output_columns = 'array(' . PHP_EOL;
|
||||||
foreach($this->columns as $column){
|
foreach($this->columns as $column){
|
||||||
if(is_a($column, 'QueryTag'))
|
if(is_a($column, 'QueryTag'))
|
||||||
|
|
@ -69,9 +76,11 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return argument list
|
* Return argument list
|
||||||
|
*
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
function getArguments(){
|
function getArguments()
|
||||||
|
{
|
||||||
$arguments = array();
|
$arguments = array();
|
||||||
foreach($this->columns as $column){
|
foreach($this->columns as $column){
|
||||||
if(is_a($column, 'QueryTag'))
|
if(is_a($column, 'QueryTag'))
|
||||||
|
|
@ -79,5 +88,5 @@
|
||||||
}
|
}
|
||||||
return $arguments;
|
return $arguments;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
|
||||||
|
|
@ -1,49 +1,61 @@
|
||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* UpdateColumnTag
|
* UpdateColumnTag
|
||||||
* Models the <column> tag inside an XML Query file whose action is 'update'
|
* Models the <column> tag inside an XML Query file whose action is 'update'
|
||||||
*
|
*
|
||||||
* @author Arnia Software
|
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
||||||
* @package /classes/xml/xmlquery/tags/column
|
* @package /classes/xml/xmlquery/tags/column
|
||||||
* @version 0.1
|
* @version 0.1
|
||||||
*/
|
*/
|
||||||
class UpdateColumnTag extends ColumnTag {
|
class UpdateColumnTag extends ColumnTag {
|
||||||
/**
|
/**
|
||||||
* argument
|
* Argument
|
||||||
* @var QueryArgument object
|
* @var QueryArgument object
|
||||||
*/
|
*/
|
||||||
var $argument;
|
var $argument;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* default value
|
* Default value
|
||||||
* @var string
|
* @var string
|
||||||
*/
|
*/
|
||||||
var $default_value;
|
var $default_value;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* constructor
|
* Constructor
|
||||||
* @param object $column
|
* @param object $column
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function UpdateColumnTag($column) {
|
function UpdateColumnTag($column)
|
||||||
|
{
|
||||||
parent::ColumnTag($column->attrs->name);
|
parent::ColumnTag($column->attrs->name);
|
||||||
|
|
||||||
$dbParser = DB::getParser();
|
$dbParser = DB::getParser();
|
||||||
$this->name = $dbParser->parseColumnName($this->name);
|
$this->name = $dbParser->parseColumnName($this->name);
|
||||||
|
|
||||||
if($column->attrs->var)
|
if($column->attrs->var)
|
||||||
$this->argument = new QueryArgument($column);
|
$this->argument = new QueryArgument($column);
|
||||||
else {
|
else {
|
||||||
if(strpos($column->attrs->default, '.') !== false)
|
if(strpos($column->attrs->default, '.') !== FALSE)
|
||||||
|
{
|
||||||
$this->default_value = "'" . $dbParser->parseColumnName($column->attrs->default) . "'";
|
$this->default_value = "'" . $dbParser->parseColumnName($column->attrs->default) . "'";
|
||||||
else {
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
$default_value = new DefaultValue($this->name, $column->attrs->default);
|
$default_value = new DefaultValue($this->name, $column->attrs->default);
|
||||||
if($default_value->isOperation())
|
if($default_value->isOperation())
|
||||||
$this->argument = new QueryArgument($column, true);
|
{
|
||||||
|
$this->argument = new QueryArgument($column, TRUE);
|
||||||
|
}
|
||||||
//else $this->default_value = $dbParser->parseColumnName($column->attrs->default);
|
//else $this->default_value = $dbParser->parseColumnName($column->attrs->default);
|
||||||
else {
|
else
|
||||||
|
{
|
||||||
$this->default_value = $default_value->toString();
|
$this->default_value = $default_value->toString();
|
||||||
if($default_value->isStringFromFunction()){
|
if($default_value->isStringFromFunction())
|
||||||
|
{
|
||||||
$this->default_value = '"\'".' . $this->default_value . '."\'"';
|
$this->default_value = '"\'".' . $this->default_value . '."\'"';
|
||||||
}
|
}
|
||||||
if($default_value->isString()){
|
if($default_value->isString())
|
||||||
|
{
|
||||||
$this->default_value = '"' . $this->default_value . '"';
|
$this->default_value = '"' . $this->default_value . '"';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -53,21 +65,36 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function getExpressionString(){
|
/**
|
||||||
|
* Returns the string to be output in the cache file
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
function getExpressionString()
|
||||||
|
{
|
||||||
if($this->argument)
|
if($this->argument)
|
||||||
|
{
|
||||||
return sprintf('new UpdateExpression(\'%s\', ${\'%s_argument\'})'
|
return sprintf('new UpdateExpression(\'%s\', ${\'%s_argument\'})'
|
||||||
, $this->name
|
, $this->name
|
||||||
, $this->argument->argument_name);
|
, $this->argument->argument_name);
|
||||||
else {
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
return sprintf('new UpdateExpressionWithoutArgument(\'%s\', %s)'
|
return sprintf('new UpdateExpressionWithoutArgument(\'%s\', %s)'
|
||||||
, $this->name
|
, $this->name
|
||||||
, $this->default_value);
|
, $this->default_value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function getArgument(){
|
/**
|
||||||
|
* Returns the Argument associated with this update statement
|
||||||
|
*
|
||||||
|
* @return QueryArgument
|
||||||
|
*/
|
||||||
|
function getArgument()
|
||||||
|
{
|
||||||
return $this->argument;
|
return $this->argument;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,13 @@
|
||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* UpdateColumnsTag
|
* UpdateColumnsTag
|
||||||
* Models the <column> tag inside an XML Query file whose action is 'update'
|
* Models the <columns> tag inside an XML Query file whose action is 'update'
|
||||||
*
|
*
|
||||||
* @author Arnia Software
|
* @author Corina Udrescu (corina.udrescu@arnia.ro)
|
||||||
* @package /classes/xml/xmlquery/tags/column
|
* @package /classes/xml/xmlquery/tags/column
|
||||||
* @version 0.1
|
* @version 0.1
|
||||||
*/
|
*/
|
||||||
class UpdateColumnsTag{
|
class UpdateColumnsTag{
|
||||||
/**
|
/**
|
||||||
* Column list
|
* Column list
|
||||||
* @var array value is UpdateColumnTag object
|
* @var array value is UpdateColumnTag object
|
||||||
|
|
@ -15,11 +15,12 @@
|
||||||
var $columns;
|
var $columns;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* constructor
|
* Constructor
|
||||||
* @param array|string $xml_columns
|
* @param array|object $xml_columns
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function UpdateColumnsTag($xml_columns) {
|
function UpdateColumnsTag($xml_columns)
|
||||||
|
{
|
||||||
$this->columns = array();
|
$this->columns = array();
|
||||||
|
|
||||||
if(!is_array($xml_columns)) $xml_columns = array($xml_columns);
|
if(!is_array($xml_columns)) $xml_columns = array($xml_columns);
|
||||||
|
|
@ -31,10 +32,12 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* UpdateColumnTag object to string
|
* Returns the string to be output in the cache file
|
||||||
|
*
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
function toString(){
|
function toString()
|
||||||
|
{
|
||||||
$output_columns = 'array(' . PHP_EOL;
|
$output_columns = 'array(' . PHP_EOL;
|
||||||
foreach($this->columns as $column){
|
foreach($this->columns as $column){
|
||||||
$output_columns .= $column->getExpressionString() . PHP_EOL . ',';
|
$output_columns .= $column->getExpressionString() . PHP_EOL . ',';
|
||||||
|
|
@ -46,9 +49,11 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return argument list
|
* Return argument list
|
||||||
|
*
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
function getArguments(){
|
function getArguments()
|
||||||
|
{
|
||||||
$arguments = array();
|
$arguments = array();
|
||||||
foreach($this->columns as $column){
|
foreach($this->columns as $column){
|
||||||
$arguments[] = $column->getArgument();
|
$arguments[] = $column->getArgument();
|
||||||
|
|
@ -56,6 +61,6 @@
|
||||||
return $arguments;
|
return $arguments;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue