Ejemplo n.º 1
0
 /**
  * Returns concatenation field-descriptor for given general metadata.
  *
  * @param GeneralPropertyMetadata $generalMetadata
  * @param ConcatenationTypeMetadata $type
  * @param array $options
  *
  * @return DoctrineConcatenationFieldDescriptor
  */
 protected function getConcatenationFieldDescriptor(GeneralPropertyMetadata $generalMetadata, ConcatenationTypeMetadata $type, $options)
 {
     return new DoctrineConcatenationFieldDescriptor(array_map(function (FieldMetadata $fieldMetadata) use($generalMetadata, $options) {
         return $this->getFieldDescriptor($generalMetadata, $fieldMetadata, $options);
     }, $type->getFields()), $this->resolveOptions($generalMetadata->getName(), $options), $generalMetadata->getTranslation(), $this->resolveOptions($type->getGlue(), $options), $this->isDisabled($generalMetadata), $this->isDefault($generalMetadata), $generalMetadata->getType(), $generalMetadata->getWidth(), $generalMetadata->getMinWidth(), $generalMetadata->isSortable(), $generalMetadata->isEditable(), $generalMetadata->getCssClass());
 }
Ejemplo n.º 2
0
 /**
  * Extracts concatenation-type for property-node.
  *
  * @param \DOMXPath $xpath
  * @param \DOMElement $propertyNode
  *
  * @return ConcatenationTypeMetadata
  */
 protected function getConcatenationType(\DOMXPath $xpath, \DOMElement $propertyNode)
 {
     $type = new ConcatenationTypeMetadata(XmlUtil::getValueFromXPath('@orm:glue', $xpath, $propertyNode, ' '));
     foreach ($xpath->query('orm:field', $propertyNode) as $fieldNode) {
         if (null === ($field = $this->getField($xpath, $fieldNode))) {
             continue;
         }
         $type->addField($field);
     }
     return $type;
 }