Storm\Core\Object\UnitOfWork::Discard PHP Method

Discard() public method

Discards the supplied entity
public Discard ( object $Entity ) : void
$Entity object The entity to discard
return void
    public function Discard($Entity)
    {
        $Hash = spl_object_hash($Entity);
        if (isset($this->DiscardenceData[$Hash])) {
            return $this->DiscardenceData[$Hash];
        }
        if (!$this->Domain->HasIdentity($Entity)) {
            return;
        }
        $DiscardenceData = $this->Domain->Discard($this, $Entity);
        $this->DiscardenceData[$Hash] = $DiscardenceData;
        $EntityType = $DiscardenceData->GetEntityType();
        if (!isset($this->DiscardedIdentityGroups[$EntityType])) {
            $this->DiscardedIdentityGroups[$EntityType] = [];
        }
        $this->DiscardedIdentityGroups[$EntityType][] = $DiscardenceData;
    }

Usage Example

Esempio n. 1
0
 public function testEntityWithoutIdentityIsDiscarded()
 {
     $Entity = $this->Entity(null);
     $this->UnitOfWork->Discard($Entity);
     $this->assertCount(0, $this->UnitOfWork->GetDiscardenceData());
     $this->assertCount(0, $this->UnitOfWork->GetDiscardenceDataGroups());
 }
All Usage Examples Of Storm\Core\Object\UnitOfWork::Discard