Page Menu
Home
WickedGov Phorge
Search
Configure Global Search
Log In
Files
F4143310
Sequence.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
3 KB
Referenced Files
None
Subscribers
None
Sequence.php
View Options
<?php
namespace
Doctrine\DBAL\Schema
;
use
Doctrine\DBAL\Schema\Visitor\Visitor
;
use
Doctrine\Deprecations\Deprecation
;
use
function
count
;
use
function
sprintf
;
/**
* Sequence structure.
*/
class
Sequence
extends
AbstractAsset
{
/** @var int */
protected
$allocationSize
=
1
;
/** @var int */
protected
$initialValue
=
1
;
/** @var int|null */
protected
$cache
;
/**
* @param string $name
* @param int $allocationSize
* @param int $initialValue
* @param int|null $cache
*/
public
function
__construct
(
$name
,
$allocationSize
=
1
,
$initialValue
=
1
,
$cache
=
null
)
{
$this
->
_setName
(
$name
);
$this
->
setAllocationSize
(
$allocationSize
);
$this
->
setInitialValue
(
$initialValue
);
$this
->
cache
=
$cache
;
}
/** @return int */
public
function
getAllocationSize
()
{
return
$this
->
allocationSize
;
}
/** @return int */
public
function
getInitialValue
()
{
return
$this
->
initialValue
;
}
/** @return int|null */
public
function
getCache
()
{
return
$this
->
cache
;
}
/**
* @param int $allocationSize
*
* @return Sequence
*/
public
function
setAllocationSize
(
$allocationSize
)
{
if
(
$allocationSize
>
0
)
{
$this
->
allocationSize
=
$allocationSize
;
}
else
{
$this
->
allocationSize
=
1
;
}
return
$this
;
}
/**
* @param int $initialValue
*
* @return Sequence
*/
public
function
setInitialValue
(
$initialValue
)
{
if
(
$initialValue
>
0
)
{
$this
->
initialValue
=
$initialValue
;
}
else
{
$this
->
initialValue
=
1
;
}
return
$this
;
}
/**
* @param int $cache
*
* @return Sequence
*/
public
function
setCache
(
$cache
)
{
$this
->
cache
=
$cache
;
return
$this
;
}
/**
* Checks if this sequence is an autoincrement sequence for a given table.
*
* This is used inside the comparator to not report sequences as missing,
* when the "from" schema implicitly creates the sequences.
*
* @return bool
*/
public
function
isAutoIncrementsFor
(
Table
$table
)
{
$primaryKey
=
$table
->
getPrimaryKey
();
if
(
$primaryKey
===
null
)
{
return
false
;
}
$pkColumns
=
$primaryKey
->
getColumns
();
if
(
count
(
$pkColumns
)
!==
1
)
{
return
false
;
}
$column
=
$table
->
getColumn
(
$pkColumns
[
0
]);
if
(!
$column
->
getAutoincrement
())
{
return
false
;
}
$sequenceName
=
$this
->
getShortestName
(
$table
->
getNamespaceName
());
$tableName
=
$table
->
getShortestName
(
$table
->
getNamespaceName
());
$tableSequenceName
=
sprintf
(
'%s_%s_seq'
,
$tableName
,
$column
->
getShortestName
(
$table
->
getNamespaceName
()));
return
$tableSequenceName
===
$sequenceName
;
}
/**
* @deprecated
*
* @return void
*/
public
function
visit
(
Visitor
$visitor
)
{
Deprecation
::
triggerIfCalledFromOutside
(
'doctrine/dbal'
,
'https://github.com/doctrine/dbal/pull/5435'
,
'Sequence::visit() is deprecated.'
,
);
$visitor
->
acceptSequence
(
$this
);
}
}
File Metadata
Details
Attached
Mime Type
text/x-php
Expires
Aug 19 2026, 16:46 (4 w, 4 d ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
20/98/0bbd12b425ce6465a113fc96c45e
Default Alt Text
Sequence.php (3 KB)
Attached To
Mode
rMWPROD MediaWiki Production
Attached
Detach File
Event Timeline
Log In to Comment