Example #1
0
 public static function get()
 {
     //Entity loader
     $entities = Config::getEntityNamespacePath();
     //Annotation metadata driver
     $config = new Configuration();
     $md = $config->newDefaultAnnotationDriver(array($entities['path']));
     $config->setMetadataDriverImpl($md);
     $config->setMetadataCacheImpl(new ArrayCache());
     //Set and configure preferred serializer for persistence
     //If using serialaztion groups you can sepcify the names here
     $config->setEntitySerializer(new JMSSerializer(SerializationContext::create()->setGroups('store')));
     //Add event listeners here
     $eventManager = new EventManager();
     //$eventManager->addEventListener('prePersist', $listener);
     //Create the client
     $client = new Client(array('connections' => Config::getServers()));
     //Get the search manager
     return new SearchManager($config, new ElasticaAdapter($client), $eventManager);
 }