Create a new JsonSchema based on two merged schema
public merge ( Joli\Jane\Model\JsonSchema $left, Joli\Jane\Model\JsonSchema $right ) : Joli\Jane\Model\JsonSchema | ||
$left | Joli\Jane\Model\JsonSchema | |
$right | Joli\Jane\Model\JsonSchema | |
return | Joli\Jane\Model\JsonSchema |
/** * {@inheritDoc} */ public function guessClass($object, $name) { $classes = []; foreach ($object->getOneOf() as $oneOf) { $oneOfName = $name . 'Sub'; $oneOfResolved = $oneOf; if ($oneOf instanceof Reference) { $oneOfName = array_pop(explode('/', $oneOf->getFragment())); $oneOfResolved = $this->resolver->resolve($oneOf); } $merged = $this->jsonSchemaMerger->merge($object, $oneOfResolved); $classes = array_merge($classes, $this->chainGuesser->guessClass($merged, $oneOfName)); if ($oneOf instanceof Reference) { $oneOf->setResolved($merged); } } return $classes; }