Overview

Packages

  • alpha::controller
  • alpha::controller::front
  • alpha::exceptions
  • alpha::model
  • alpha::model::types
  • alpha::tasks
  • alpha::tests
  • alpha::util
  • alpha::util::cache
  • alpha::util::codehighlight
  • alpha::util::convertors
  • alpha::util::feeds
  • alpha::util::filters
  • alpha::util::graphs
  • alpha::util::helpers
  • alpha::util::metrics
  • alpha::view
  • alpha::view::renderers
  • alpha::view::widgets

Classes

  • AlphaType
  • Boolean
  • Date
  • DEnum
  • DEnumItem
  • Double
  • Enum
  • Integer
  • Relation
  • RelationLookup
  • Sequence
  • String
  • Text
  • Timestamp

Interfaces

  • AlphaTypeInterface
  • Overview
  • Package
  • Class
  • Tree
  • Deprecated

Class RelationLookup

The RelationLookup complex data type. Used to store object2object lookup tables for MANY-TO-MANY relationships between business objects

AlphaDAO
Extended by RelationLookup implements AlphaTypeInterface
Package: alpha::model::types
Copyright: Copyright (c) 2012, John Collins (founder of Alpha Framework). All rights reserved.
Redistribution and use in source and binary forms, with or
without modification, are permitted provided that the
following conditions are met:

* Redistributions of source code must retain the above
  copyright notice, this list of conditions and the
  following disclaimer.
* Redistributions in binary form must reproduce the above
  copyright notice, this list of conditions and the
  following disclaimer in the documentation and/or other
  materials provided with the distribution.
* Neither the name of the Alpha Framework nor the names
  of its contributors may be used to endorse or promote
  products derived from this software without specific
  prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

License: The BSD License
Author: John Collins <dev@alphaframework.org>
Version: $Id: RelationLookup.inc 1548 2012-07-29 17:07:07Z alphadevx $
Since: 1.0
Located at model/types/RelationLookup.inc
Methods summary
public
# __construct( mixed $leftClassName, mixed $rightClassName )

The constructor

The constructor

Throws

FailedLookupCreateException
IllegalArguementException

Since

1.0

Overrides

AlphaDAO::__construct()
public string
# getLeftClassName( )

Get the leftClassName value

Get the leftClassName value

Returns

string

Since

1.0
public string
# getRightClassName( )

Get the rightClassName value

Get the rightClassName value

Returns

string

Since

1.0
public string
# getTableName( )

Custom getter for the TABLE_NAME, which can't be static in this class due to the lookup tablenames being different each time.

Custom getter for the TABLE_NAME, which can't be static in this class due to the lookup tablenames being different each time.

Returns

string

Throws

AlphaException

Since

1.0

Overrides

AlphaDAO::getTableName()
public array
# loadAllByAttribute( string $attribute, string $value, integer $start = 0, integer $limit = 0, string $orderBy = "OID", string $order = "ASC", boolean $ignoreClassType = false, array $constructorArgs = array() )

This custom version provides the left/right class names to the business object constructor, required for RelationLookup objects.

This custom version provides the left/right class names to the business object constructor, required for RelationLookup objects.

(non-PHPdoc)

Parameters

$attribute
string
$atribute The attribute to load the objects by.
$value
string
$value The value of the attribute to load the objects by.
$start
integer
$start The start of the SQL LIMIT clause, useful for pagination.
$limit
integer
$limit The amount (limit) of objects to load, useful for pagination.
$orderBy
string
$orderBy The name of the field to sort the objects by.
$order
string
$order The order to sort the objects by.
$ignoreClassType
boolean
$ignoreClassType Default is false, set to true if you want to load from overloaded tables and ignore the class type.
$constructorArgs
array
$constructorArgs An optional array of contructor arguements to pass to the BOs that will be generated and returned. Supports a maximum of 5 arguements.

Returns

array
An array containing objects of this type of business object.

Throws

BONotFoundException
IllegalArguementException

See

alpha/model/AlphaDAO::loadAllByAttribute()

Overrides

AlphaDAO::loadAllByAttribute()
public string
# getHelper( )

Getter for the validation helper string

Getter for the validation helper string

Returns

string

Since

1.0

Implementation of

AlphaTypeInterface::getHelper()
public
# setHelper( string $helper )

Set the validation helper text

Set the validation helper text

Parameters

$helper
string
$helper

Since

1.0

Implementation of

AlphaTypeInterface::setHelper()
public array
# getValue( )

Returns an array of the OIDs of the related objects

Returns an array of the OIDs of the related objects

Returns

array

Since

1.0

Implementation of

AlphaTypeInterface::getValue()
public
# setValue( array $OIDs )

Used to set the OIDs of the related objects. Pass a two-item array of OIDs, the first one being the left object OID, the second being the right.

Used to set the OIDs of the related objects. Pass a two-item array of OIDs, the first one being the left object OID, the second being the right.

Parameters

$OIDs
array
$OIDs

Throws

IllegalArguementException

Since

1.0

Implementation of

AlphaTypeInterface::setValue()
public string
# __toString( )

Used to convert the object to a printable string

Used to convert the object to a printable string

Returns

string

Since

1.0

Implementation of

AlphaTypeInterface::__toString()
Methods inherited from AlphaDAO
__wakeup(), addProperty(), addToCache(), begin(), cast(), checkBOTableExists(), checkClassDefExists(), checkRecordExists(), checkTableExists(), checkTableNeedsUpdate(), commit(), createForeignIndex(), createUniqueIndex(), delete(), deleteAllByAttribute(), disconnect(), dropTable(), findMissingFields(), get(), getBOClassNames(), getConnection(), getCount(), getCreateTS(), getCreatorId(), getDataLabel(), getDataLabels(), getDefaultAttributes(), getFriendlyClassName(), getHistoryCount(), getID(), getIndexes(), getLastQuery(), getMAX(), getMaintainHistory(), getOID(), getPersistentAttributes(), getPropObject(), getTransientAttributes(), getUniqueAttributes(), getUpdateTS(), getUpdatorId(), getVersion(), getVersionNumber(), hasAttribute(), isInstalled(), isTableOverloaded(), isTagged(), isTransient(), load(), loadAll(), loadAllByAttributes(), loadAllByDayUpdated(), loadAllFieldValuesByAttribute(), loadByAttribute(), loadClassDef(), loadFromCache(), makeHistoryTable(), makeTable(), markPersistent(), markTransient(), markUnique(), populateFromPost(), query(), rebuildTable(), reload(), removeFromCache(), rollback(), save(), saveAttribute(), saveHistory(), set(), setDataLabels(), setEnumOptions(), setLastQuery(), setMaintainHistory(), setOID(), validate()
Properties summary
protected Integer $leftID
#

The OID of the left business object in the relation

The OID of the left business object in the relation

Since

1.0
protected Integer $rightID
#

The OID of the right business object in the relation

The OID of the right business object in the relation

Since

1.0
private string $leftClassName
#

The name of the left business object class in the relation

The name of the left business object class in the relation

Since

1.0
private string $rightClassName
#

The name of the right business object class in the relation

The name of the right business object class in the relation

Since

1.0
private static Logger $logger null
#

Trace logger

Trace logger

Since

1.0
protected array $dataLabels array("OID"=>"RelationLookup ID#","leftID"=>"Left BO ID#","rightID"=>"Right BO ID#")
#

an array of data display labels for the class properties

an array of data display labels for the class properties

Since

1.0
protected string $helper 'Not a valid RelationLookup value!'
#

The message to display to the user when validation fails

The message to display to the user when validation fails

Since

1.0
Properties inherited from AlphaDAO
$OID, $created_by, $created_ts, $defaultAttributes, $lastQuery, $transientAttributes, $uniqueAttributes, $updated_by, $updated_ts, $version_num
Alpha Framework API Documentation API documentation generated by ApiGen 2.8.0