/**
  * Bind an instance of the Source Adapter Factory to the container.
  *
  * Attaches the default adapter types
  * @return void
  */
 public function registerSourceAdapterFactory()
 {
     $this->app->singleton('mediable.source.factory', function (Container $app) {
         $factory = new SourceAdapterFactory();
         $adapters = $app['config']->get('mediable.source_adapters');
         foreach ($adapters['class'] as $source => $adapter) {
             $factory->setAdapterForClass($adapter, $source);
         }
         foreach ($adapters['pattern'] as $source => $adapter) {
             $factory->setAdapterForPattern($adapter, $source);
         }
         return $factory;
     });
     $this->app->alias('mediable.source.factory', SourceAdapterFactory::class);
 }
Ejemplo n.º 2
0
 /**
  * Set the source for the file.
  * @param  mixed $source
  * @return static
  */
 public function fromSource($source)
 {
     $this->source = $this->factory->create($source);
     return $this;
 }
 public function test_it_returns_adapters_unmodified()
 {
     $factory = new SourceAdapterFactory();
     $adapter = $this->createMock(SourceAdapterInterface::class);
     $this->assertEquals($adapter, $factory->create($adapter));
 }