public function mapEntity(Record $record, $data) { $this->data = $data; $this->record = $record; $this->record->setId($this->data['nid']); $this->record->setProperty('name', $this->data['title']); $this->record->setRevision(1); return $this->record; }
public function saveRecord(Record $record, DataDimensions $dataDimensions = null) { if (!$dataDimensions) { $dataDimensions = $this->getCurrentDataDimensions(); } if ($record->getID() == '') { $record->setId($this->getNextId($record->getContentTypeName(), $dataDimensions)); $record->setRevision(1); $toBeSavedRecord = $record; } else { $mergedRecord = $this->mergeExistingRecord($record, $dataDimensions); $mergedRecord->setRevision($mergedRecord->getRevision() + 1); $record->setRevision($mergedRecord->getRevision()); $toBeSavedRecord = $mergedRecord; } $toBeSavedRecord->setLastChangeUserInfo($this->userInfo); $record->setLastChangeUserInfo($this->userInfo); $filename = $this->getConfiguration()->getFolderNameRecords($toBeSavedRecord->getContentTypeName(), $dataDimensions); $filename .= '/' . $toBeSavedRecord->getID() . '.json'; $data = json_encode($toBeSavedRecord, JSON_PRETTY_PRINT); $this->stashRecord($toBeSavedRecord, $dataDimensions); if (!$this->writeData($filename, $data)) { throw new AnyContentClientException('Error when saving record of content type ' . $record->getContentTypeName()); } return $toBeSavedRecord->getID(); }
public function testSaveRecordSameConnection() { $connection = $this->connection; $connection->selectContentType('profiles'); $record = new Record($connection->getCurrentContentTypeDefinition(), 'Agency 5'); $record->setId(5); $this->assertEquals('Agency 5', $record->getProperty('name')); $record->setProperty('name', 'Agency 51'); $connection->saveRecord($record); $record = $connection->getRecord(5); $this->assertEquals('Agency 51', $record->getProperty('name')); }
public function testSaveRecordSameConnection() { $connection = $this->connection; if (!$connection) { $this->markTestSkipped('RestLike Basic Connection credentials missing.'); } $connection->selectContentType('profiles'); $record = new Record($connection->getCurrentContentTypeDefinition(), 'Agency 5'); $record->setId(5); $this->assertEquals('Agency 5', $record->getProperty('name')); $record->setProperty('name', 'Agency 51'); $connection->saveRecord($record); $record = $connection->getRecord(5); $this->assertEquals('Agency 51', $record->getProperty('name')); }