<?xml version="1.0" encoding="UTF-8" ?>

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:util="http://www.springframework.org/schema/util"
       xsi:schemaLocation=
       "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd">
    
    <!-- トランザクションモデル別Bean定義ファイルの雛形をインポート -->
    <import resource="classpath:template/PartitionChunkTransactionBean.xml"/>

    <!--SqlMapConfig-->
    <bean id="sqlMapConfigFileName" class="java.lang.String">
        <constructor-arg value="tutorial/UC0001/UC0001_sqlMapConfig.xml"/>
    </bean>

    <!--分割ジョブの多重実行数-->
    <bean id="multiplicity" class="java.lang.Integer">
        <constructor-arg value="3"/>
    </bean>

    <!-- ジョブ分割キーのコレクタ -->
    <bean id="partitionkeyCollector" parent="stringArrayPropertyPartitionKeyCollector">
        <property name="dataArray" value="東京,大阪,福岡" />
    </bean>

    <!--ジョブコンテキスト-->
    <bean id="jobContext" class="jp.terasoluna.batch.tutorial.uc0001.JB0003JobContext"/>

    <!-- 親ジョブ前処理 -->
    <util:list id="parentjobPreLogicList">
        <bean class="jp.terasoluna.batch.tutorial.uc0001.jb0001.DBJobPreLogic">
            <property name="queryDAO" ref="queryDAO" />
        </bean>
    </util:list>

    <!-- 対象データ取得処理 -->
    <bean id="collector" parent="IBatisDbChunkCollector">
        <property name="sql" value="UC0001.getPartitionNyukinData" />
    </bean>

    <!-- ビジネスロジック -->
    <bean id="blogic" class="jp.terasoluna.batch.tutorial.uc0001.jb0001.DBBLogic">
        <property name="queryDAO" ref="queryDAO" />
        <property name="updateDAO" ref="updateDAO" />
        <property name="messageAccessor" ref="messageAccessor"/>
    </bean>

    <!-- ジョブ後処理 -->
    <util:list id="jobPostLogicList">
        <bean class="jp.terasoluna.batch.tutorial.uc0001.jb0001.DBJobPostLogic">
            <property name="updateDAO" ref="updateDAO" />
        </bean>
    </util:list>
</beans>
