Server IP : 127.0.0.2 / Your IP : 3.144.112.72 Web Server : Apache/2.4.18 (Ubuntu) System : User : www-data ( ) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : disk_free_space,disk_total_space,diskfreespace,dl,exec,fpaththru,getmyuid,getmypid,highlight_file,ignore_user_abord,leak,listen,link,opcache_get_configuration,opcache_get_status,passthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,php_uname,phpinfo,posix_ctermid,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix,_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_times,posix_ttyname,posix_uname,pclose,popen,proc_open,proc_close,proc_get_status,proc_nice,proc_terminate,shell_exec,source,show_source,system,virtual MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/html/vendor/laravel/framework/src/Illuminate/Support/ |
Upload File : |
<?php namespace Illuminate\Support; use Illuminate\Console\Application as Artisan; abstract class ServiceProvider { /** * The application instance. * * @var \Illuminate\Contracts\Foundation\Application */ protected $app; /** * Indicates if loading of the provider is deferred. * * @var bool */ protected $defer = false; /** * The paths that should be published. * * @var array */ protected static $publishes = []; /** * The paths that should be published by group. * * @var array */ protected static $publishGroups = []; /** * Create a new service provider instance. * * @param \Illuminate\Contracts\Foundation\Application $app * @return void */ public function __construct($app) { $this->app = $app; } /** * Merge the given configuration with the existing configuration. * * @param string $path * @param string $key * @return void */ protected function mergeConfigFrom($path, $key) { $config = $this->app['config']->get($key, []); $this->app['config']->set($key, array_merge(require $path, $config)); } /** * Load the given routes file if routes are not already cached. * * @param string $path * @return void */ protected function loadRoutesFrom($path) { if (! $this->app->routesAreCached()) { require $path; } } /** * Register a view file namespace. * * @param string $path * @param string $namespace * @return void */ protected function loadViewsFrom($path, $namespace) { if (is_dir($appPath = $this->app->resourcePath().'/views/vendor/'.$namespace)) { $this->app['view']->addNamespace($namespace, $appPath); } $this->app['view']->addNamespace($namespace, $path); } /** * Register a translation file namespace. * * @param string $path * @param string $namespace * @return void */ protected function loadTranslationsFrom($path, $namespace) { $this->app['translator']->addNamespace($namespace, $path); } /** * Register a database migration path. * * @param array|string $paths * @return void */ protected function loadMigrationsFrom($paths) { $this->app->afterResolving('migrator', function ($migrator) use ($paths) { foreach ((array) $paths as $path) { $migrator->path($path); } }); } /** * Register paths to be published by the publish command. * * @param array $paths * @param string $group * @return void */ protected function publishes(array $paths, $group = null) { $class = static::class; if (! array_key_exists($class, static::$publishes)) { static::$publishes[$class] = []; } static::$publishes[$class] = array_merge(static::$publishes[$class], $paths); if ($group) { if (! array_key_exists($group, static::$publishGroups)) { static::$publishGroups[$group] = []; } static::$publishGroups[$group] = array_merge(static::$publishGroups[$group], $paths); } } /** * Get the paths to publish. * * @param string $provider * @param string $group * @return array */ public static function pathsToPublish($provider = null, $group = null) { if ($provider && $group) { if (empty(static::$publishes[$provider]) || empty(static::$publishGroups[$group])) { return []; } return array_intersect_key(static::$publishes[$provider], static::$publishGroups[$group]); } if ($group && array_key_exists($group, static::$publishGroups)) { return static::$publishGroups[$group]; } if ($provider && array_key_exists($provider, static::$publishes)) { return static::$publishes[$provider]; } if ($group || $provider) { return []; } $paths = []; foreach (static::$publishes as $class => $publish) { $paths = array_merge($paths, $publish); } return $paths; } /** * Register the package's custom Artisan commands. * * @param array|mixed $commands * @return void */ public function commands($commands) { $commands = is_array($commands) ? $commands : func_get_args(); Artisan::starting(function ($artisan) use ($commands) { $artisan->resolveCommands($commands); }); } /** * Get the services provided by the provider. * * @return array */ public function provides() { return []; } /** * Get the events that trigger this service provider to register. * * @return array */ public function when() { return []; } /** * Determine if the provider is deferred. * * @return bool */ public function isDeferred() { return $this->defer; } /** * Get a list of files that should be compiled for the package. * * @return array */ public static function compiles() { return []; } }