Example #1
0
 public final function SetEntityMap(IEntityMap $EntityMap = null)
 {
     $this->EntityMap = $EntityMap;
     if ($EntityMap !== null) {
         $this->Accessor->SetEntityType($EntityMap->GetEntityType());
         $this->Identifier = $this->Accessor->GetIdentifier();
     }
 }
Example #2
0
 private function AddAccessor(Accessors\Accessor $NewAccessor)
 {
     if ($this->Accessor === null) {
         $this->Accessor = $NewAccessor;
     } else {
         if (!$this->Accessor instanceof Accessors\Traversing) {
             $this->Accessor = new Accessors\Traversing([$this->Accessor, $NewAccessor]);
         } else {
             $this->Accessor = new Accessors\Traversing(array_merge($this->Accessor->GetNestedAccessors(), [$NewAccessor]));
         }
     }
 }
Example #3
0
 private function SetterAccessorsMatch(Accessor $Accessor, Accessor $OtherAccessor, &$MatchedAccessorType = null)
 {
     if ($Accessor->GetSetterIdentifier() === $OtherAccessor->GetSetterIdentifier()) {
         $MatchedAccessorType = self::PropertiesAreSetters;
         return true;
     }
     return false;
 }
Example #4
0
 public final function SetValue($Entity, $Value)
 {
     $TraversedValue = $this->GetTraversedValue($Entity);
     $this->FinalAccessor->SetEntityType(get_class($TraversedValue));
     $this->FinalAccessor->SetValue($TraversedValue, $Value);
 }