eZ\Publish\Core\Persistence\Legacy\Content\FieldValue\Converter\CountryConverter::toStorageFieldDefinition PHP Method

toStorageFieldDefinition() public method

Converts field definition data in $fieldDef into $storageFieldDef.
public toStorageFieldDefinition ( eZ\Publish\SPI\Persistence\Content\Type\FieldDefinition $fieldDef, StorageFieldDefinition $storageDef )
$fieldDef eZ\Publish\SPI\Persistence\Content\Type\FieldDefinition
$storageDef eZ\Publish\Core\Persistence\Legacy\Content\StorageFieldDefinition
    public function toStorageFieldDefinition(FieldDefinition $fieldDef, StorageFieldDefinition $storageDef)
    {
        if (isset($fieldDef->fieldTypeConstraints->fieldSettings['isMultiple'])) {
            $storageDef->dataInt1 = (int) $fieldDef->fieldTypeConstraints->fieldSettings['isMultiple'];
        }
        $storageDef->dataText5 = $fieldDef->defaultValue->data === null ? '' : implode(',', $fieldDef->defaultValue->data);
    }

Usage Example

Example #1
0
 /**
  * @group fieldType
  * @group country
  * @covers \eZ\Publish\Core\Persistence\Legacy\Content\FieldValue\Converter\CountryConverter::toStorageFieldDefinition
  */
 public function testToStorageFieldDefinitionSingle()
 {
     $fieldTypeConstraints = new FieldTypeConstraints();
     $fieldTypeConstraints->fieldSettings = new FieldSettings(array('isMultiple' => false));
     $storageFieldDef = new StorageFieldDefinition();
     $this->converter->toStorageFieldDefinition(new PersistenceFieldDefinition(array('fieldTypeConstraints' => $fieldTypeConstraints)), $storageFieldDef);
     self::assertSame(0, $storageFieldDef->dataInt1);
     self::assertEmpty($storageFieldDef->dataText5);
 }