3.3. S2ContainerFactory リファレンス


3.3.1. ダイコンファイルの作成

S2Containerを使用するためには、定義ファイルを作成する必要があります。 定義ファイルは、コンポーネントを組み立てるための設計書のようなものです。 定義ファイルの拡張子は .dicon、または .xml です。diconは「ダイコン」と読みます。

ダイコンファイルでのS2Containerの定義は次のようになります。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR2.1//DTD S2Container//EN"
"http://www.seasar.org/dtd/components21.dtd">
<components>
    <component name="..." class="...">
            ...
    </component>
    <component name="..." class="...">
            ...
    </component>
</components>

DOCTYPEは省略できません。diconファイルを作成する場合は、上記のサンプルをコピー&ペーストしてください。 ルートはcomponentsタグです。コンポーネントごとに、 componentタグを定義していきます。 componentタグの class属性でコンポーネントのクラス名を指定します。name属性にはコンポーネント名を指定します。 詳細は、S2Container定義タグリファレンスを参照してください。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR2.1//DTD S2Container//EN"
"http://www.seasar.org/dtd/components21.dtd">
<components>
    <component name="action" class="IndexAction"/>
</components>

3.3.2. S2Containerの生成

S2ContainerFactoryのcreateメソッドを用いて、ダイコンファイルからS2Containerを生成します。

/**
 * @param string $path
 */
S2ContainerFactory::create($path)
  • 第1引数 : ダイコンファイルへのパス

次のように、ダイコンファイルのパスを指定してS2Containerを生成します。

<?php
require_once('S2Container/S2Container.php');

$PATH = "path/to/ccc.dicon";
$container = seasar\container\factory\S2ContainerFactory::create($PATH);
・・・



© Copyright The Seasar Foundation and the others 2005-2010, all rights reserved.