Overview

Namespaces

  • Alpha
    • Controller
      • Front
    • Exception
    • Model
      • Type
    • Task
    • Util
      • Backup
      • Cache
      • Code
        • Highlight
        • Metric
      • Config
      • Convertor
      • Email
      • Extension
      • Feed
      • File
      • Graph
      • Helper
      • Http
        • Filter
        • Session
      • Image
      • Logging
      • Search
      • Security
    • View
      • Renderer
        • Html
        • Json
      • Widget

Classes

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

Interfaces

  • TypeInterface
  • Overview
  • Namespace
  • Class
  • Tree

Class RelationLookup

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

Alpha\Model\ActiveRecord
Extended by Alpha\Model\Type\RelationLookup implements Alpha\Model\Type\TypeInterface
Namespace: Alpha\Model\Type
Copyright: Copyright (c) 2015, John Collins (founder of Alpha Framework). All rights reserved. <pre> 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. </pre>
License: The BSD License
Author: John Collins <dev@alphaframework.org>
Since: 1.0
Located at Model/Type/RelationLookup.php
Methods summary
public
# __construct( mixed $leftClassName, mixed $rightClassName )

The constructor.

The constructor.

Throws

Alpha\Exception\FailedLookupCreateException
Alpha\Exception\FailedLookupCreateException
Alpha\Exception\IllegalArguementException
Alpha\Exception\IllegalArguementException

Since

1.0

Overrides

Alpha\Model\ActiveRecord::__construct()
public string
# getLeftClassName( )

Get the leftClassName value.

Get the leftClassName value.

Returns

string
string

Since

1.0
public string
# getRightClassName( )

Get the rightClassName value.

Get the rightClassName value.

Returns

string
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
string

Throws

Alpha\Exception\AlphaException
Alpha\Exception\AlphaException

Since

1.0

Overrides

Alpha\Model\ActiveRecord::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
int $start The start of the SQL LIMIT clause, useful for pagination.
$limit
int $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
bool $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

Alpha\Exception\RecordNotFoundException
Alpha\Exception\RecordNotFoundException
Alpha\Exception\IllegalArguementException
Alpha\Exception\IllegalArguementException

See

Alpha\Model\ActiveRecord::loadAllByAttribute()

Overrides

Alpha\Model\ActiveRecord::loadAllByAttribute()
public array
# loadAllByAttributes( array $attributes = array(), array $values = array(), integer $start = 0, integer $limit = 0, string $orderBy = 'OID', string $order = 'ASC', boolean $ignoreClassType = false )

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

$attributes
array $atributes The attributes to load the objects by.
$values
array $values The values of the attributes to load the objects by.
$start
int $start The start of the SQL LIMIT clause, useful for pagination.
$limit
int $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
bool $ignoreClassType Default is false, set to true if you want to load from overloaded tables and ignore the class type

Returns

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

Throws

Alpha\Exception\RecordNotFoundException
Alpha\Exception\RecordNotFoundException
Alpha\Exception\IllegalArguementException
Alpha\Exception\IllegalArguementException

See

Alpha\Model\ActiveRecord::loadAllByAttributes()

Overrides

Alpha\Model\ActiveRecord::loadAllByAttributes()
public string
# getHelper( )

Getter for the validation helper string.

Getter for the validation helper string.

Returns

string
string

Since

1.0

Implementation of

Alpha\Model\Type\TypeInterface::getHelper()
public
# setHelper( string $helper )

Set the validation helper text.

Set the validation helper text.

Parameters

$helper
string $helper

Since

1.0

Implementation of

Alpha\Model\Type\TypeInterface::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
array

Since

1.0

Implementation of

Alpha\Model\Type\TypeInterface::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

Alpha\Exception\IllegalArguementException
Alpha\Exception\IllegalArguementException

Since

1.0

Implementation of

Alpha\Model\Type\TypeInterface::setValue()
public string
# __toString( )

Used to convert the object to a printable string.

Used to convert the object to a printable string.

Returns

string
string

Since

1.0

Implementation of

Alpha\Model\Type\TypeInterface::__toString()
Methods inherited from Alpha\Model\ActiveRecord
__wakeup(), addProperty(), addToCache(), begin(), cast(), checkBOTableExists(), checkDatabaseExists(), checkRecordExists(), checkTableExists(), checkTableNeedsUpdate(), commit(), createDatabase(), createForeignIndex(), createUniqueIndex(), delete(), deleteAllByAttribute(), disconnect(), dropDatabase(), dropTable(), findMissingFields(), get(), getBOClassNames(), getCount(), getCreateTS(), getCreatorId(), getDataLabel(), getDataLabels(), getDefaultAttributes(), getFriendlyClassName(), getHistoryCount(), getID(), getIndexes(), getLastQuery(), getMAX(), getMaintainHistory(), getOID(), getPersistentAttributes(), getPropObject(), getTaggedAttributes(), getTransientAttributes(), getUniqueAttributes(), getUpdateTS(), getUpdatorId(), getVersion(), getVersionNumber(), hasAttribute(), isInstalled(), isTableOverloaded(), isTagged(), isTransient(), load(), loadAll(), loadAllByDayUpdated(), loadAllFieldValuesByAttribute(), loadAllOldVersions(), loadByAttribute(), loadFromCache(), makeHistoryTable(), makeTable(), markPersistent(), markTransient(), markUnique(), populateFromArray(), query(), rebuildTable(), reload(), removeFromCache(), rollback(), save(), saveAttribute(), saveHistory(), set(), setDataLabels(), setEnumOptions(), setLastQuery(), setMaintainHistory(), setOID(), toArray(), validate()
Properties summary
protected Alpha\Model\Type\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 Alpha\Model\Type\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
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 Alpha\Model\ActiveRecord
$OID, $created_by, $created_ts, $defaultAttributes, $lastQuery, $transientAttributes, $uniqueAttributes, $updated_by, $updated_ts, $version_num
Alpha Framework 2.0.4 API Documentation API documentation generated by ApiGen 2.8.0