/**
* Returns case field-descriptor for given general metadata.
*
* @param GeneralPropertyMetadata $generalMetadata
* @param CaseTypeMetadata $type
* @param array $options
*
* @return DoctrineCaseFieldDescriptor
*/
private function getCaseFieldDescriptor(GeneralPropertyMetadata $generalMetadata, CaseTypeMetadata $type, $options)
{
$case1 = $type->getCase(0);
$case2 = $type->getCase(1);
return new DoctrineCaseFieldDescriptor($this->resolveOptions($generalMetadata->getName(), $options), new DoctrineDescriptor($case1->getEntityName(), $case1->getName(), $this->getDoctrineJoins($case1->getJoins(), $options)), new DoctrineDescriptor($case2->getEntityName(), $case2->getName(), $this->getDoctrineJoins($case2->getJoins(), $options)), $generalMetadata->getTranslation(), $this->isDisabled($generalMetadata), $this->isDefault($generalMetadata), $generalMetadata->getType(), $generalMetadata->getWidth(), $generalMetadata->getMinWidth(), $generalMetadata->isSortable(), $generalMetadata->isEditable(), $generalMetadata->getCssClass());
}