Initial Drupal 11 with DDEV setup
This commit is contained in:
40
vendor/doctrine/persistence/src/Persistence/Event/LifecycleEventArgs.php
vendored
Normal file
40
vendor/doctrine/persistence/src/Persistence/Event/LifecycleEventArgs.php
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Doctrine\Persistence\Event;
|
||||
|
||||
use Doctrine\Common\EventArgs;
|
||||
use Doctrine\Persistence\ObjectManager;
|
||||
|
||||
/**
|
||||
* Lifecycle Events are triggered by the UnitOfWork during lifecycle transitions
|
||||
* of entities.
|
||||
*
|
||||
* @template-covariant TObjectManager of ObjectManager
|
||||
*/
|
||||
class LifecycleEventArgs extends EventArgs
|
||||
{
|
||||
/** @phpstan-param TObjectManager $objectManager */
|
||||
public function __construct(
|
||||
private readonly object $object,
|
||||
private readonly ObjectManager $objectManager,
|
||||
) {
|
||||
}
|
||||
|
||||
/** Retrieves the associated object. */
|
||||
public function getObject(): object
|
||||
{
|
||||
return $this->object;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves the associated ObjectManager.
|
||||
*
|
||||
* @phpstan-return TObjectManager
|
||||
*/
|
||||
public function getObjectManager(): ObjectManager
|
||||
{
|
||||
return $this->objectManager;
|
||||
}
|
||||
}
|
||||
48
vendor/doctrine/persistence/src/Persistence/Event/LoadClassMetadataEventArgs.php
vendored
Normal file
48
vendor/doctrine/persistence/src/Persistence/Event/LoadClassMetadataEventArgs.php
vendored
Normal file
@ -0,0 +1,48 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Doctrine\Persistence\Event;
|
||||
|
||||
use Doctrine\Common\EventArgs;
|
||||
use Doctrine\Persistence\Mapping\ClassMetadata;
|
||||
use Doctrine\Persistence\ObjectManager;
|
||||
|
||||
/**
|
||||
* Class that holds event arguments for a loadMetadata event.
|
||||
*
|
||||
* @template-covariant TClassMetadata of ClassMetadata<object>
|
||||
* @template-covariant TObjectManager of ObjectManager
|
||||
*/
|
||||
class LoadClassMetadataEventArgs extends EventArgs
|
||||
{
|
||||
/**
|
||||
* @phpstan-param TClassMetadata $classMetadata
|
||||
* @phpstan-param TObjectManager $objectManager
|
||||
*/
|
||||
public function __construct(
|
||||
private readonly ClassMetadata $classMetadata,
|
||||
private readonly ObjectManager $objectManager,
|
||||
) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves the associated ClassMetadata.
|
||||
*
|
||||
* @phpstan-return TClassMetadata
|
||||
*/
|
||||
public function getClassMetadata(): ClassMetadata
|
||||
{
|
||||
return $this->classMetadata;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves the associated ObjectManager.
|
||||
*
|
||||
* @phpstan-return TObjectManager
|
||||
*/
|
||||
public function getObjectManager(): ObjectManager
|
||||
{
|
||||
return $this->objectManager;
|
||||
}
|
||||
}
|
||||
32
vendor/doctrine/persistence/src/Persistence/Event/ManagerEventArgs.php
vendored
Normal file
32
vendor/doctrine/persistence/src/Persistence/Event/ManagerEventArgs.php
vendored
Normal file
@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Doctrine\Persistence\Event;
|
||||
|
||||
use Doctrine\Common\EventArgs;
|
||||
use Doctrine\Persistence\ObjectManager;
|
||||
|
||||
/**
|
||||
* Provides event arguments for the preFlush event.
|
||||
*
|
||||
* @template-covariant TObjectManager of ObjectManager
|
||||
*/
|
||||
class ManagerEventArgs extends EventArgs
|
||||
{
|
||||
/** @phpstan-param TObjectManager $objectManager */
|
||||
public function __construct(
|
||||
private readonly ObjectManager $objectManager,
|
||||
) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves the associated ObjectManager.
|
||||
*
|
||||
* @phpstan-return TObjectManager
|
||||
*/
|
||||
public function getObjectManager(): ObjectManager
|
||||
{
|
||||
return $this->objectManager;
|
||||
}
|
||||
}
|
||||
34
vendor/doctrine/persistence/src/Persistence/Event/OnClearEventArgs.php
vendored
Normal file
34
vendor/doctrine/persistence/src/Persistence/Event/OnClearEventArgs.php
vendored
Normal file
@ -0,0 +1,34 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Doctrine\Persistence\Event;
|
||||
|
||||
use Doctrine\Common\EventArgs;
|
||||
use Doctrine\Persistence\ObjectManager;
|
||||
|
||||
/**
|
||||
* Provides event arguments for the onClear event.
|
||||
*
|
||||
* @template-covariant TObjectManager of ObjectManager
|
||||
*/
|
||||
class OnClearEventArgs extends EventArgs
|
||||
{
|
||||
/**
|
||||
* @param ObjectManager $objectManager The object manager.
|
||||
* @phpstan-param TObjectManager $objectManager
|
||||
*/
|
||||
public function __construct(private readonly ObjectManager $objectManager)
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves the associated ObjectManager.
|
||||
*
|
||||
* @phpstan-return TObjectManager
|
||||
*/
|
||||
public function getObjectManager(): ObjectManager
|
||||
{
|
||||
return $this->objectManager;
|
||||
}
|
||||
}
|
||||
89
vendor/doctrine/persistence/src/Persistence/Event/PreUpdateEventArgs.php
vendored
Normal file
89
vendor/doctrine/persistence/src/Persistence/Event/PreUpdateEventArgs.php
vendored
Normal file
@ -0,0 +1,89 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Doctrine\Persistence\Event;
|
||||
|
||||
use Doctrine\Persistence\ObjectManager;
|
||||
use InvalidArgumentException;
|
||||
|
||||
use function sprintf;
|
||||
|
||||
/**
|
||||
* Class that holds event arguments for a preUpdate event.
|
||||
*
|
||||
* @template-covariant TObjectManager of ObjectManager
|
||||
* @extends LifecycleEventArgs<TObjectManager>
|
||||
*/
|
||||
class PreUpdateEventArgs extends LifecycleEventArgs
|
||||
{
|
||||
/** @var array<string, array<int, mixed>> */
|
||||
private array $entityChangeSet;
|
||||
|
||||
/**
|
||||
* @param array<string, array<int, mixed>> $changeSet
|
||||
* @phpstan-param TObjectManager $objectManager
|
||||
*/
|
||||
public function __construct(object $entity, ObjectManager $objectManager, array &$changeSet)
|
||||
{
|
||||
parent::__construct($entity, $objectManager);
|
||||
|
||||
$this->entityChangeSet = &$changeSet;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves the entity changeset.
|
||||
*
|
||||
* @return array<string, array<int, mixed>>
|
||||
*/
|
||||
public function getEntityChangeSet(): array
|
||||
{
|
||||
return $this->entityChangeSet;
|
||||
}
|
||||
|
||||
/** Checks if field has a changeset. */
|
||||
public function hasChangedField(string $field): bool
|
||||
{
|
||||
return isset($this->entityChangeSet[$field]);
|
||||
}
|
||||
|
||||
/** Gets the old value of the changeset of the changed field. */
|
||||
public function getOldValue(string $field): mixed
|
||||
{
|
||||
$this->assertValidField($field);
|
||||
|
||||
return $this->entityChangeSet[$field][0];
|
||||
}
|
||||
|
||||
/** Gets the new value of the changeset of the changed field. */
|
||||
public function getNewValue(string $field): mixed
|
||||
{
|
||||
$this->assertValidField($field);
|
||||
|
||||
return $this->entityChangeSet[$field][1];
|
||||
}
|
||||
|
||||
/** Sets the new value of this field. */
|
||||
public function setNewValue(string $field, mixed $value): void
|
||||
{
|
||||
$this->assertValidField($field);
|
||||
|
||||
$this->entityChangeSet[$field][1] = $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Asserts the field exists in changeset.
|
||||
*
|
||||
* @throws InvalidArgumentException
|
||||
*/
|
||||
private function assertValidField(string $field): void
|
||||
{
|
||||
if (! isset($this->entityChangeSet[$field])) {
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'Field "%s" is not a valid field of the entity "%s" in PreUpdateEventArgs.',
|
||||
$field,
|
||||
$this->getObject()::class,
|
||||
));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user