Class Sequence
A custom sequence datatype, which is stored as a string and is made up of a string prefix and an integer sequence, which is stored in a database.
- Alpha\Model\ActiveRecord
- Alpha\Model\Type\Sequence implements Alpha\Model\Type\TypeInterface
Copyright:
Copyright (c) 2018, 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
Since: 1.0
Located at Model/Type/Sequence.php
Methods summary
public
|
|
public
string
|
|
public
|
#
setSequenceToNext( )
Sets the sequence number to be the maximum value matching the prefix in the database plus one. Note that calling this method increments the maximum value in the database. |
public
string
|
|
public
|
|
public
string
|
|
public
|
|
public
integer
|
|
public
string
|
Methods inherited from Alpha\Model\ActiveRecord
__wakeup()
,
addProperty()
,
addToCache()
,
backupDatabase()
,
begin()
,
cast()
,
checkDatabaseExists()
,
checkRecordExists()
,
checkRecordTableExists()
,
checkTableExists()
,
checkTableNeedsUpdate()
,
commit()
,
createDatabase()
,
createForeignIndex()
,
createUniqueIndex()
,
delete()
,
deleteAllByAttribute()
,
disconnect()
,
dropDatabase()
,
dropTable()
,
findMissingFields()
,
get()
,
getCount()
,
getCreateTS()
,
getCreatorId()
,
getDataLabel()
,
getDataLabels()
,
getDefaultAttributes()
,
getFriendlyClassName()
,
getHistoryCount()
,
getID()
,
getIndexes()
,
getLastQuery()
,
getMAX()
,
getMaintainHistory()
,
getPersistentAttributes()
,
getPropObject()
,
getRecordClassNames()
,
getTableName()
,
getTaggedAttributes()
,
getTransientAttributes()
,
getUniqueAttributes()
,
getUpdateTS()
,
getUpdatorId()
,
getVersion()
,
getVersionNumber()
,
hasAttribute()
,
isInstalled()
,
isTableOverloaded()
,
isTagged()
,
isTransient()
,
load()
,
loadAll()
,
loadAllByAttribute()
,
loadAllByAttributes()
,
loadAllByDayUpdated()
,
loadAllFieldValuesByAttribute()
,
loadAllOldVersions()
,
loadByAttribute()
,
loadClassDef()
,
loadFromCache()
,
makeHistoryTable()
,
makeTable()
,
markPersistent()
,
markTransient()
,
markUnique()
,
populateFromArray()
,
query()
,
rebuildTable()
,
reload()
,
removeFromCache()
,
rollback()
,
save()
,
saveAttribute()
,
saveHistory()
,
saveRelations()
,
set()
,
setDataLabels()
,
setEnumOptions()
,
setID()
,
setLastQuery()
,
setMaintainHistory()
,
toArray()
,
validate()
Constants summary
string |
TABLE_NAME
The name of the database table for the class. |
#
'Sequence'
|
integer |
MAX_SIZE
The absolute maximum size of the value for the this Sequence. |
#
255
|
Properties summary
protected
Alpha\Model\String
|
$prefix
The string prefix (must be capital alphabet characters only). |
|
protected
Alpha\Model\Integer
|
$sequence
The integer sequence number incremented for each Sequence value with this prefix. |
|
protected
array
|
$dataLabels
An array of data display labels for the class properties. |
#
array('ID' => 'Sequence ID#', 'prefix' => 'Sequence prefix', 'sequence' => 'Sequence number')
|
protected
string
|
$helper
The message to display to the user when validation fails. |
#
'Not a valid sequence value!'
|
protected
integer
|
$size
The size of the value for the this Sequence. |
#
255
|
protected
string
|
$validationRule
The validation rule for the Sequence type. |
Properties inherited from Alpha\Model\ActiveRecord
$ID
,
$created_by
,
$created_ts
,
$defaultAttributes
,
$lastQuery
,
$transientAttributes
,
$uniqueAttributes
,
$updated_by
,
$updated_ts
,
$version_num