Files
Phraseanet/lib/Alchemy/Phrasea/Core/Provider/PhraseanetServiceProvider.php
Nicolas Le Goff 28eecf6a09 Merge branch '3.8'
Conflicts:
	.gitignore
	bin/console
	composer.json
	composer.lock
	hudson/fixtures.sql
	lib/Alchemy/Phrasea/Command/Developer/IniReset.php
	lib/Alchemy/Phrasea/Command/Setup/Install.php
	lib/Alchemy/Phrasea/Controller/Api/Oauth2.php
	lib/Alchemy/Phrasea/Controller/Api/V1.php
	lib/Alchemy/Phrasea/Controller/Prod/Export.php
	lib/Alchemy/Phrasea/Controller/Root/Login.php
	lib/Alchemy/Phrasea/Core/Provider/PhraseanetServiceProvider.php
	lib/Alchemy/Phrasea/Core/Version.php
	lib/Alchemy/Phrasea/Helper/DatabaseHelper.php
	lib/Alchemy/Phrasea/Helper/Prod.php
	lib/classes/API/OAuth2/Application.php
	lib/classes/API/V1/Interface.php
	lib/classes/API/V1/adapter.php
	lib/classes/Setup/Upgrade.php
	lib/classes/media/subdef.php
	lib/classes/task/period/RecordMover.php
	templates/web/prod/index.html.twig
	templates/web/setup/step2.html.twig
	tests/Alchemy/Tests/Phrasea/Controller/Admin/RootTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Root/LoginTest.php
	tests/classes/api/v1/api_v1_adapterTest.php
	tests/db-ref.sqlite
	vagrant/vms/phraseanet-php54-nginx/puphpet/config.yaml
	vagrant/vms/phraseanet-php54-nginx/puphpet/files/exec-once/setup
2014-10-09 19:40:33 +02:00

84 lines
2.5 KiB
PHP

<?php
/*
* This file is part of Phraseanet
*
* (c) 2005-2014 Alchemy
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Alchemy\Phrasea\Core\Provider;
use Alchemy\Phrasea\Http\StaticFile\Symlink\SymLinker;
use Alchemy\Phrasea\Http\StaticFile\Symlink\SymLinkerEncoder;
use Alchemy\Phrasea\Metadata\PhraseanetMetadataReader;
use Alchemy\Phrasea\Metadata\PhraseanetMetadataSetter;
use Alchemy\Phrasea\Authentication\ACLProvider;
use Alchemy\Phrasea\Security\Firewall;
use Silex\Application as SilexApplication;
use Silex\ServiceProviderInterface;
use XPDF\Exception\BinaryNotFoundException;
class PhraseanetServiceProvider implements ServiceProviderInterface
{
public function register(SilexApplication $app)
{
$app['phraseanet.appbox'] = $app->share(function (SilexApplication $app) {
return new \appbox($app);
});
$app['firewall'] = $app->share(function (SilexApplication $app) {
return new Firewall($app);
});
$app['events-manager'] = $app->share(function (SilexApplication $app) {
$events = new \eventsmanager_broker($app);
$events->start();
return $events;
});
$app['phraseanet.thumb-symlinker'] = $app->share(function (SilexApplication $app) {
return SymLinker::create($app);
});
$app['phraseanet.thumb-symlinker-encoder'] = $app->share(function (SilexApplication $app) {
return SymLinkerEncoder::create($app);
});
$app['acl'] = $app->share(function (SilexApplication $app) {
return new ACLProvider($app);
});
$app['phraseanet.appbox-register'] = $app->share(function ($app) {
return new \appbox_register($app['phraseanet.appbox']);
});
$app['phraseanet.metadata-reader'] = $app->share(function (SilexApplication $app) {
$reader = new PhraseanetMetadataReader();
try {
$reader->setPdfToText($app['xpdf.pdftotext']);
} catch (BinaryNotFoundException $e) {
}
return $reader;
});
$app['phraseanet.metadata-setter'] = $app->share(function (SilexApplication $app) {
return new PhraseanetMetadataSetter();
});
$app['phraseanet.user-query'] = function (SilexApplication $app) {
return new \User_Query($app);
};
}
public function boot(SilexApplication $app)
{
}
}