| Server IP : 103.161.17.216 / Your IP : 216.73.216.1 Web Server : nginx/1.18.0 System : Linux tipsysaigoncharming 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 7.4.3-4ubuntu2.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/app.ansachsongkhoe.net/vendor/arcanedev/support/src/ |
Upload File : |
<?php namespace Arcanedev\Support;
use Illuminate\Contracts\Foundation\Application;
use Illuminate\Foundation\AliasLoader;
use Illuminate\Support\ServiceProvider as IlluminateServiceProvider;
/**
* Class ServiceProvider
*
* @package Arcanedev\Support\Laravel
* @author ARCANEDEV <arcanedev.maroc@gmail.com>
*/
abstract class ServiceProvider extends IlluminateServiceProvider
{
/* -----------------------------------------------------------------
| Properties
| -----------------------------------------------------------------
*/
/**
* The application instance.
*
* @var \Illuminate\Foundation\Application
*/
protected $app;
/**
* The aliases collection.
*
* @var array
*/
protected $aliases = [];
/**
* Alias loader.
*
* @var \Illuminate\Foundation\AliasLoader
*/
private $aliasLoader;
/* -----------------------------------------------------------------
| Constructor
| -----------------------------------------------------------------
*/
/**
* Create a new service provider instance.
*
* @param \Illuminate\Contracts\Foundation\Application $app
*/
public function __construct(Application $app)
{
parent::__construct($app);
$this->aliasLoader = AliasLoader::getInstance();
}
/* -----------------------------------------------------------------
| Main Methods
| -----------------------------------------------------------------
*/
/**
* Register the service provider.
*/
public function register()
{
//
}
/**
* Boot the service provider.
*/
public function boot()
{
//
}
/**
* Register a binding with the container.
*
* @param string|array $abstract
* @param \Closure|string|null $concrete
* @param bool $shared
*/
public function bind($abstract, $concrete = null, $shared = false)
{
$this->app->bind($abstract, $concrete, $shared);
}
/**
* Register a shared binding in the container.
*
* @param string|array $abstract
* @param \Closure|string|null $concrete
*/
protected function singleton($abstract, $concrete = null)
{
$this->app->singleton($abstract, $concrete);
}
/**
* Register a service provider.
*
* @param \Illuminate\Support\ServiceProvider|string $provider
* @param array $options
* @param bool $force
*
* @return \Illuminate\Support\ServiceProvider
*/
protected function registerProvider($provider, array $options = [], $force = false)
{
return $this->app->register($provider, $options, $force);
}
/**
* Register multiple service providers.
*
* @param array $providers
*/
protected function registerProviders(array $providers)
{
foreach ($providers as $provider) {
$this->registerProvider($provider);
}
}
/**
* Register a console service provider.
*
* @param \Illuminate\Support\ServiceProvider|string $provider
* @param array $options
* @param bool $force
*
* @return \Illuminate\Support\ServiceProvider|null
*/
protected function registerConsoleServiceProvider($provider, array $options = [], $force = false)
{
if ($this->app->runningInConsole())
return $this->registerProvider($provider, $options, $force);
return null;
}
/**
* Register aliases (Facades).
*/
protected function registerAliases()
{
$loader = $this->aliasLoader;
$this->app->booting(function() use ($loader) {
foreach ($this->aliases as $class => $alias) {
$loader->alias($class, $alias);
}
});
}
/**
* Add an aliases to the loader.
*
* @param array $aliases
*
* @return self
*/
protected function aliases(array $aliases)
{
foreach ($aliases as $class => $alias) {
$this->alias($class, $alias);
}
return $this;
}
/**
* Add an alias to the loader.
*
* @param string $class
* @param string $alias
*
* @return self
*/
protected function alias($class, $alias)
{
$this->aliases[$class] = $alias;
return $this;
}
/* -----------------------------------------------------------------
| Services
| -----------------------------------------------------------------
*/
/**
* Get the config repository instance.
*
* @return \Illuminate\Config\Repository
*/
protected function config()
{
return $this->app['config'];
}
/**
* Get the filesystem instance.
*
* @return \Illuminate\Filesystem\Filesystem
*/
protected function filesystem()
{
return $this->app['files'];
}
}