public function addTraitsMetadata($meta, array &$config) { // add versioned fields for entities that have the Nameable trait if (ClassAnalyzer::hasTrait($meta->name, 'Librinfo\\DoctrineBundle\\Entity\\Traits\\Nameable')) { $config['versioned'][] = 'name'; } // add versioned fields for entities that have the Descriptible trait if (ClassAnalyzer::hasTrait($meta->name, 'Librinfo\\DoctrineBundle\\Entity\\Traits\\Descriptible')) { $config['versioned'][] = 'description'; } // add versioned fields for entities that have the Emailable trait if (ClassAnalyzer::hasTrait($meta->name, 'Librinfo\\DoctrineBundle\\Entity\\Traits\\Emailable')) { $config['versioned'][] = 'email'; $config['versioned'][] = 'emailNpai'; $config['versioned'][] = 'emailNoNewsletter'; } // add versioned fields for entities that have the Addressable trait if (ClassAnalyzer::hasTrait($meta->name, 'Librinfo\\DoctrineBundle\\Entity\\Traits\\Addressable')) { $config['versioned'][] = 'address'; $config['versioned'][] = 'zip'; $config['versioned'][] = 'city'; $config['versioned'][] = 'country'; $config['versioned'][] = 'npai'; $config['versioned'][] = 'vcardUid'; $config['versioned'][] = 'confirmed'; } }
public function hasTrait($object, $traitFQDN) { return $this->classAnalyzer->hasTrait($object, $traitFQDN); }