Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
100.00% |
1 / 1 |
|
100.00% |
2 / 2 |
CRAP | |
100.00% |
12 / 12 |
AustinHeap\Database\Encryption\EncryptionServiceProvider | |
100.00% |
1 / 1 |
|
100.00% |
2 / 2 |
5 | |
100.00% |
12 / 12 |
boot | |
100.00% |
1 / 1 |
4 | |
100.00% |
7 / 7 |
|||
register | |
100.00% |
1 / 1 |
1 | |
100.00% |
5 / 5 |
<?php | |
/** | |
* src/EncryptionServiceProvider.php. | |
* | |
* @author Austin Heap <me@austinheap.com> | |
* @version v0.2.0 | |
*/ | |
declare(strict_types=1); | |
namespace AustinHeap\Database\Encryption; | |
/** | |
* EncryptionServiceProvider. | |
* | |
* @link https://github.com/austinheap/laravel-database-encryption | |
* @link https://packagist.org/packages/austinheap/laravel-database-encryption | |
* @link https://austinheap.github.io/laravel-database-encryption/classes/AustinHeap.Database.Encryption.EncryptionServiceProvider.html | |
*/ | |
class EncryptionServiceProvider extends \Illuminate\Support\ServiceProvider | |
{ | |
/** | |
* Indicates if loading of the provider is deferred. | |
* | |
* @var bool | |
*/ | |
protected $defer = false; | |
/** | |
* Bootstrap the application services. | |
* | |
* This method is called after all other service providers have | |
* been registered, meaning you have access to all other services | |
* that have been registered by the framework. | |
* | |
* @return void | |
*/ | |
public function boot(): void | |
{ | |
$this->publishes([__DIR__.'/../config/database-encryption.php' => config_path('database-encryption.php')]); | |
if (! defined('LARAVEL_DATABASE_ENCRYPTION_VERSION')) { | |
define('LARAVEL_DATABASE_ENCRYPTION_VERSION', EncryptionHelper::VERSION); | |
} | |
foreach (EncryptionDefaults::getHelpersDefault() as $helper) { | |
throw_if(! empty($helper) && ! function_exists($helper), | |
'The provider did not boot helper function: "'.$helper.'".'); | |
} | |
} | |
/** | |
* Register the application services. | |
* | |
* @return void | |
*/ | |
public function register(): void | |
{ | |
$this->mergeConfigFrom(__DIR__.'/../config/database-encryption.php', 'database-encryption'); | |
$this->app->singleton(EncryptionFacade::getFacadeAccessor(), function ($app) { | |
return new EncryptionHelper(); | |
}); | |
$this->commands([\AustinHeap\Database\Encryption\Console\Commands\MigrateEncryptionCommand::class]); | |
} | |
} |