src/Tools/ClassMetadata/ClassMetadata.php
private function load()
    {
        $reflectionClass = new \ReflectionClass($this->name);
        $this->collectionInfo = new CollectionInfo();

        foreach ($this->reader->getClassAnnotations($reflectionClass) as $annotation) {
            $this->processClassAnnotation($annotation);
        }

        $properties = $reflectionClass->getProperties();

        foreach ($properties as $property) {
            foreach ($this->reader->getPropertyAnnotations($property) as $annotation) {
                if (!isset($this->propertiesInfos[$property->getName()])) {
                    $this->propertiesInfos[$property->getName()] = new PropertyInfo();
                }
                $this->processPropertiesAnnotation($property->getName(), $annotation);
            }
        }

        $this->eventManager = new EventManager();
        if ($this->hasEvent) {
            $methods = $reflectionClass->getMethods();
            foreach ($methods as $method) {
                $annotations = $this->reader->getMethodAnnotations($method);
                if (!empty($annotations)) {
                    foreach ($annotations as $annotation) {
                        if (in_array('JPC\MongoDB\ODM\Annotations\Event\Event', class_implements($annotation))) {
                            $this->eventManager->add($annotation, $method->getName());
                        }
                    }
                }
            }
        }

        $this->loaded = true;
    }
private function load()
    {
        $reflectionClass = new \ReflectionClass($this->name);
        $this->collectionInfo = new CollectionInfo();

        foreach ($this->reader->getClassAnnotations($reflectionClass) as $annotation) {
            $this->processClassAnnotation($annotation);
        }

        $properties = $reflectionClass->getProperties();

        foreach ($properties as $property) {
            foreach ($this->reader->getPropertyAnnotations($property) as $annotation) {
                if (!isset($this->propertiesInfos[$property->getName()])) {
                    $this->propertiesInfos[$property->getName()] = new PropertyInfo();
                }
                $this->processPropertiesAnnotation($property->getName(), $annotation);
            }
        }

        $this->eventManager = new EventManager();
        if ($this->hasEvent) {
            $methods = $reflectionClass->getMethods();
            foreach ($methods as $method) {
                $annotations = $this->reader->getMethodAnnotations($method);
                if (!empty($annotations)) {
                    foreach ($annotations as $annotation) {
                        if (in_array('JPC\MongoDB\ODM\Annotations\Event\Event', class_implements($annotation))) {
                            $this->eventManager->add($annotation, $method->getName());
                        }
                    }
                }
            }
        }

        $this->loaded = true;
    }
private function load ( ) { $ reflectionClass = new \ ReflectionClass ( $ this -> name ) ; $ this -> collectionInfo = new CollectionInfo ( ) ; foreach ( $ this -> reader -> getClassAnnotations ( $ reflectionClass ) as $ annotation ) { $ this -> processClassAnnotation ( $ annotation ) ; } $ properties = $ reflectionClass -> getProperties ( ) ; foreach ( $ properties as $ property ) { foreach ( $ this -> reader -> getPropertyAnnotations ( $ property ) as $ annotation ) { if ( ! isset ( $ this -> propertiesInfos [ $ property -> getName ( ) ] ) ) { $ this -> propertiesInfos [ $ property -> getName ( ) ] = new PropertyInfo ( ) ; } $ this -> processPropertiesAnnotation ( $ property -> getName ( ) , $ annotation ) ; } } $ this -> eventManager = new EventManager ( ) ; if ( $ this -> hasEvent ) { $ methods = $ reflectionClass -> getMethods ( ) ; foreach ( $ methods as $ method ) { $ annotations = $ this -> reader -> getMethodAnnotations ( $ method ) ; if ( ! empty ( $ annotations ) ) { foreach ( $ annotations as $ annotation ) { if ( in_array ( 'JPC\MongoDB\ODM\Annotations\Event\Event' , class_implements ( $ annotation ) ) ) { $ this -> eventManager -> add ( $ annotation , $ method -> getName ( ) ) ; } } } } } $ this -> loaded = true ; }
Load all metadata

@return void
Load all metadata