Jake Vanderwerf
2026-02-10 db7986cd0c325a761e8534334195cd9ec7b1961a
inc/managers/SEO/schemas/SchemaResolverRegistry.php
@@ -1,9 +1,13 @@
<?php
namespace JVBase\managers\SEO;
namespace JVBase\managers\SEO\schemas;
use JVBase\managers\SEO\schemas\SchemaResolverInterface;
use JVBase\managers\SEO\SchemaBuilder;
use JVBase\managers\SEO\schemas\resolvers\BaseResolver;
use JVBase\managers\SEO\schemas\resolvers\CollectionPageResolver;
use JVBase\managers\SEO\schemas\resolvers\FAQPageResolver;
use JVBase\managers\SEO\schemas\resolvers\LocalBusinessResolver;
use JVBase\managers\SEO\schemas\resolvers\PersonResolver;
use JVBase\managers\SEO\schemas\resolvers\VisualArtworkResolver;
/**
 * Registry mapping schema types to their resolvers.
 * Like Queue's TypeRegistry maps operation types to executors.
@@ -54,7 +58,19 @@
   private function registerDefaults(): void
   {
      // Register type-specific resolvers
      // Extensible via the action hook above
      $localBusiness = new LocalBusinessResolver();
      $this->register('LocalBusiness', $localBusiness);
      $visualArtwork = new VisualArtworkResolver();
      $this->register('VisualArtwork', $visualArtwork);
      $this->register('CreativeWork', new BaseResolver());
      $this->register('Person', new PersonResolver());
      $collection = new CollectionPageResolver();
      $this->register('CollectionPage', $collection);
      $this->register('DefinedTermSet', $collection);
      $this->register('FAQPage', new FAQPageResolver());
   }
}