API de la BdU du SdE
 Tout Classes Fonctions Variables Pages
Intégration dans Symfony 2

Un bundle permet d'intégrer facilement l'api dans Symfony 2 en initialisant l'api automatiquement en fonction des données des fichiers de configuration du projet.

Installation

Installation pour Symfony 2.1+ (avec Composer)

Add this in your composer.json:

{
"minimum-stability": "dev",
"require": {
"sde/bdu-bundle": "1.0.*"
},
"repositories": [
{
"type": "vcs",
"url": "http://git.notk.org/gitolite/stof/bdu-api.git"
},
{
"type": "vcs",
"url": "http://git.notk.org/gitolite/stof/BduBundle.git"
}
]
}

Installation pour Symfony 2.0

Placez l'api dans votre dossier vendor en téléchargeant le fichier zip ou en utilisant le dépôt git. Placez le bundle dans votre dossier vendor/bundles/Sde en téléchargeant le fichier zip ou en utilisant le dépôt git.

git submodule add http://stof.notk.org/git/bdu-api.git vendor/bdu-api
git submodule add http://stof.notk.org/git/BduBundle.git vendor/bundles/Sde/BduBundle

ou bien avec le fichier deps:

; deps
[bdu-api]
git=http://stof.notk.org/git/bdu-api.git
[BduBundle]
git=http://stof.notk.org/git/BduBundle.git
target=vendor/bundles/Sde/BduBundle

Enregistrez l'api et le namespace Sde dans l'autoloader de Symfony:

// app/autoload.php
$loader->registerNamespaces(array(
'Sde' => __DIR__.'/../vendor/bundles',
// vos autres namespaces
));
$loader->registerPrefixes(array(
'Bdu_' => __DIR__.'/../vendor/bdu-api/lib',
// vos autres préfixes
));

Configuration

Enregistrez le bundle dans le kernel:

// app/AppKernel.php
public function registerBundles()
{
return array(
// ...
new Sde\BduBundle\SdeBduBundle(),
// ...
);
}

Vous devez donner vos identifiants dans la configuration.

# app/config.yml
sde_bdu:
credentials:
login: 11goreti
type: people
password: 1234poney
logging: true
<!-- app/config.xml -->
<container xmlns:sde_bdu="http://www.campus.ecp.fr/schema/dic/sde_bdu">
<sde_bdu:config logging="true">
<sde_bdu:credentials login="11goreti" type="people" password="1234poney" />
</sde_bdu:config>
</container>
Note
La valeur par défaut pour les logs est kernel.debug ce qui active les logs en environnement de développement.
Avertissement
Les logs utilisent le logueur de Symfony donc vous devez activer les logs du framework pour avoir des logs de l'api.

Utilisation de l'api

L'api est maintenant accessible sous forme d'un service.

$api = $container->get('sde_bdu.api');
$api->isValidLogin('11goreti');
Avertissement
Vous ne devez pas utiliser Bdu_Container::getInstance() car le bundle utilise le container de Symfony 2 au lieu de celui de l'API.