Esempio n. 1
0
 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'));
 }