org.oddjob.sql
Class SQLResultsBus

java.lang.Object
  extended by org.oddjob.sql.BeanFactoryResultHandler
      extended by org.oddjob.sql.SQLResultsBus
All Implemented Interfaces:
SQLResultHandler

public class SQLResultsBus
extends BeanFactoryResultHandler

Description

A SQLResultHandler that attaches to BeanBus components.

Example

Writing to a list.
<oddjob>
    <job>
        <sequential>
            <jobs>
                <sql name="Setup Data">
                    <connection>
                        <identify id="connection">
                            <value>
                                <connection driver="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:mem:test" username="sa"/>
                            </value>
                        </identify>
                    </connection>
                    <input>
                        <buffer>
create table FRUIT(
   TYPE varchar(16),
   VARIETY varchar(16),
   COLOUR varchar(32),
   SIZE double);

insert into FRUIT values ('Apple', 'Cox', 'Red and Green', 7.6);

insert into FRUIT values ('Orange', 'Jaffa', 'Orange', 9.245);
        
				</buffer>
                    </input>
                </sql>
                <sql id="select">
                    <connection>
                        <value value="${connection}"/>
                    </connection>
                    <input>
                        <buffer>
select * from FRUIT;
				</buffer>
                    </input>
                    <results>
                               <list/>
                    </results>
                </sql>
                <sql name="Shutdown">
                    <connection>
                        <value value="${connection}"/>
                    </connection>
                    <input>
                        <buffer>
shutdown;
				</buffer>
                    </input>
                </sql>
            </jobs>
        </sequential>
    </job>
</oddjob>

Example

Within a MegaBeanBus.
<oddjob>
    <job>
        <sequential>
            <jobs>
                <variables id="vars">
                    <connection>
                        <connection driver="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:mem:test" username="sa"/>
                    </connection>
                </variables>
                <sql>
                    <connection>
                        <value value="${vars.connection}"/>
                    </connection>
                    <input>
                        <buffer>CREATE TABLE fruit(
  type VARCHAR(20))

INSERT INTO fruit VALUES ('apple');
INSERT INTO fruit VALUES ('orange');
INSERT INTO fruit VALUES ('pear');

</buffer>
                    </input>
                </sql>
                <bean-bus id="bean-bus">
                    <parts>
                        <sql>
                            <connection>
                                <value value="${vars.connection}"/>
                            </connection>
                            <input>
                                <buffer>SELECT type FROM fruit</buffer>
                            </input>
                        </sql>
                        <bus:bean-capture id="bean-capture" xmlns:bus="oddjob:beanbus"/>
                    </parts>
                </bean-bus>
            </jobs>
        </sequential>
    </job>
</oddjob>
Author:
rob

Constructor Summary
SQLResultsBus(Collection<? super Object> to, ArooaSession session)
           
 
Method Summary
protected  void accept(Object bean)
           
 
Methods inherited from class org.oddjob.sql.BeanFactoryResultHandler
handleResultSet, handleUpdate, setBusConductor
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SQLResultsBus

public SQLResultsBus(Collection<? super Object> to,
                     ArooaSession session)
Method Detail

accept

protected void accept(Object bean)
Specified by:
accept in class BeanFactoryResultHandler