/**
* @param ContainerInterface $container
*/
protected function register(ContainerInterface $container)
{
$core = $container->make('Kraken\\Core\\CoreInterface');
$config = $container->make('Kraken\\Config\\ConfigInterface');
$factory = new FilesystemAdapterFactory();
$fsCloud = new FilesystemManager();
$fsDisk = new Filesystem($factory->create('Local', [['path' => $core->getBasePath()]]));
$disks = $config->get('filesystem.cloud');
foreach ($disks as $disk => $config) {
$fsCloud->mountFilesystem($disk, new Filesystem($factory->create($config['class'], [$config['config']])));
}
$container->instance('Kraken\\Filesystem\\FilesystemInterface', $fsDisk);
$container->instance('Kraken\\Filesystem\\FilesystemFactoryInterface', new FilesystemFactory());
$container->instance('Kraken\\Filesystem\\FilesystemManagerInterface', $fsCloud);
}