Example #1
0
 /**
  * Registers the services provided by this provider.
  *
  * @return void
  */
 public function register()
 {
     $this->app->singleton('url/canonical/resolver', function () {
         return new CanonicalUrlResolver();
     });
     $this->app->singleton('url/canonical', function () {
         return \Core::make('url/canonical/resolver')->resolve(array());
     });
     $this->app->bindShared('url/resolver/path', function () {
         return new PathUrlResolver();
     });
     $this->app->bindShared('url/resolver/page', function () {
         return new PageUrlResolver(\Core::make('url/resolver/path'));
     });
     $this->app->bindShared('url/resolver/route', function () {
         $generator = \Route::getGenerator();
         $list = \Route::getList();
         return new RouteUrlResolver(\Core::make('url/resolver/path'), $generator, $list);
     });
     $this->app->bind('url/manager', function () {
         $manager = new ResolverManager('concrete.path', \Core::make('url/resolver/path'));
         $manager->addResolver('concrete.page', \Core::make('url/resolver/page'));
         $manager->addResolver('concrete.route', \Core::make('url/resolver/route'));
         return $manager;
     });
 }