protected function fillData(array $data) { if (isset($data['mainsnak'])) { $this->mainSnak = Snak::newFromArray($data['mainsnak']); } if (isset($data['id'])) { $this->id = $data['id']; } if ($this->internalId === null) { if ($this->id !== null) { $this->internalId = $this->id; } else { $this->internalId = time() . $this->mainSnak->getPropertyId() . $this->mainSnak->getDataValue(); //TODO improve } } }
protected function fillData(array $data) { if (isset($data['snaks'])) { foreach ($data['snaks'] as $prop => $list) { $this->snaks[$prop] = array(); foreach ($list as $val) { $snak = Snak::newFromArray($val); $this->snaks[$prop][$snak->getDataValue()->getHash()] = $snak; } } } if (isset($data['hash'])) { $this->hash = $data['hash']; } if ($this->internalId === null) { if ($this->hash !== null) { $this->internalId = $this->hash; } else { $this->internalId = time() . $this->statement->getInternalId(); //TODO improve } } }