public function register()
    {
        // merge configs
        $this->mergeConfigFrom(
            __DIR__ . '/config.php', 'ibrand.setting'
        );

        $this->app->singleton(SettingInterface::class, function ($app) {
            $repository = new EloquentSetting(new SystemSetting());

            if (!config('ibrand.setting.cache')) {
                return $repository;
            }

            return new CacheDecorator($repository);
        });

        $this->app->alias(SettingInterface::class, 'system_setting');
    }
public function register()
    {
        // merge configs
        $this->mergeConfigFrom(
            __DIR__ . '/config.php', 'ibrand.setting'
        );

        $this->app->singleton(SettingInterface::class, function ($app) {
            $repository = new EloquentSetting(new SystemSetting());

            if (!config('ibrand.setting.cache')) {
                return $repository;
            }

            return new CacheDecorator($repository);
        });

        $this->app->alias(SettingInterface::class, 'system_setting');
    }
public function register ( ) { // merge configs $ this -> mergeConfigFrom ( __DIR__ . '/config.php' , 'ibrand.setting' ) ; $ this -> app -> singleton ( SettingInterface :: class , function ( $ app ) { $ repository = new EloquentSetting ( new SystemSetting ( ) ) ; if ( ! config ( 'ibrand.setting.cache' ) ) { return $ repository ; } return new CacheDecorator ( $ repository ) ; } ) ; $ this -> app -> alias ( SettingInterface :: class , 'system_setting' ) ; }
register service provider
register service provider