コード例 #1
0
 /**
  * @param string $entityId
  *
  * @return EntityDescriptor|null
  */
 public function get($entityId)
 {
     if (null == $this->object) {
         $this->load();
     }
     if ($this->object instanceof EntityDescriptor) {
         if ($this->object->getEntityID() == $entityId) {
             return $this->object;
         } else {
             return null;
         }
     } else {
         return $this->object->getByEntityId($entityId);
     }
 }
コード例 #2
0
 /**
  * @param EntityDescriptor|EntitiesDescriptor $entityDescriptor
  *
  * @return FixedEntityDescriptorStore
  *
  * @throws \InvalidArgumentException
  */
 public function add($entityDescriptor)
 {
     if ($entityDescriptor instanceof EntityDescriptor) {
         if (false == $entityDescriptor->getEntityID()) {
             throw new \InvalidArgumentException('EntityDescriptor must have entityId set');
         }
         $this->descriptors[$entityDescriptor->getEntityID()] = $entityDescriptor;
     } elseif ($entityDescriptor instanceof EntitiesDescriptor) {
         foreach ($entityDescriptor->getAllItems() as $item) {
             $this->add($item);
         }
     } else {
         throw new \InvalidArgumentException('Expected EntityDescriptor or EntitiesDescriptor');
     }
     return $this;
 }