Joli\Jane\Guesser\ChainGuesser::guessClass PHP Method

guessClass() public method

{@inheritDoc}
public guessClass ( $object, $name )
    public function guessClass($object, $name)
    {
        $classes = [];
        foreach ($this->guessers as $guesser) {
            if (!$guesser instanceof ClassGuesserInterface) {
                continue;
            }
            if ($guesser->supportObject($object)) {
                $classes = array_merge($classes, $guesser->guessClass($object, $name));
            }
        }
        return $classes;
    }

Usage Example

 /**
  * Return a list of class guessed
  *
  * @param string $openApiSpec
  * @param string $name
  * @param string $namespace
  * @param string $directory
  *
  * @return Context
  */
 public function createContext($openApiSpec, $name, $namespace, $directory)
 {
     $schema = $this->serializer->deserialize(file_get_contents($openApiSpec), 'Joli\\Jane\\OpenApi\\Model\\OpenApi', 'json');
     $classes = $this->chainGuesser->guessClass($schema, $name);
     foreach ($classes as $class) {
         $properties = $this->chainGuesser->guessProperties($class->getObject(), $name, $classes);
         foreach ($properties as $property) {
             $property->setType($this->chainGuesser->guessType($property->getObject(), $property->getName(), $classes));
         }
         $class->setProperties($properties);
     }
     return new Context($schema, $namespace, $directory, $classes);
 }
All Usage Examples Of Joli\Jane\Guesser\ChainGuesser::guessClass