IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Utilisation du conteneur léger d'Indigo

Date de publication : 12/01/2009

Par Olivier Bugalotto (Mes articles)
 

Dans ce tutoriel, nous allons voir comment utiliser le conteneur léger d'Indigo.

I. Introduction
II. La configuration du conteneur
III. Déclarer des objets


I. Introduction

Indigo est un framework qui propose toute la mécanique du principe d'injection de dépendances ou plus communément appelé injection de contrôles (IOC).

Pour faire simple, la framework Indigo contient une fabrique d'objets, configurable à l'aide d'un fichier XML dit "descripteur", qui s'occupe pour nous de créer des objets et leurs dépendances. Cette fabrique porte plus généralement le nom de "conteneur léger".


II. La configuration du conteneur

Pour configurer le conteneur léger, nous utilisons un fichier dit "descripteur" XML qui lui indique, le type des objets à instancier mais surtout leurs dépendances.

info Attention, nous pouvons aussi configurer le conteneur léger à l'exécution sans passer par un fichier.
Voici la structure de base d'un descripteur :
Descripteur

			<?xml version="1.0" encoding="utf-8"?>
			<configuration xmlns="http://www.indigo-framework.org" 
				xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
				xsi:schemaLocation="http://www.indigo-framework.org http://www.iteratif.fr/projets/indigo/indigo-configuration.xsd">
				<objects>
					<!-- Déclarations des objets et dépendances -->
				</objects>
			</configuration>
			
info Si la syntaxe XML vous pose problème, rien ne vous empêches avec Indigo de créer votre propre fichier de configuration. Nous verrons cela dans un prochain tutoriel.

III. Déclarer des objets

Déclaration

<objects>
	<object id="amfphp" type="services.AMFPHPService" />
</objects>
La balise <object> est une définition que le conteneur utilise pour créer l'objet correspondant. L'attribut id identifie cette définition dans le conteneur. L'attribut type indique le chemin complet vers la classe de l'objet à créer.

warning ATTENTION : Il est important que les classes qu'utilise le conteneur léger ne sont pas inclus à la compilation dans le SWF généré, il faut donc les ajouter manuellement en les déclarant au compilateur à l'aide de l'option suivante: -include nom-de-la-classe


Valid XHTML 1.1!Valid CSS!

Copyright © 2008 Olivier Bugalotto. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.