xmlBlaster 2.2.0 API

org.xmlBlaster.protocol.jdbc
Class CallbackJdbcDriver

java.lang.Object
  extended by org.xmlBlaster.protocol.jdbc.CallbackJdbcDriver
All Implemented Interfaces:
I_CallbackDriver, I_Plugin

public class CallbackJdbcDriver
extends java.lang.Object
implements I_CallbackDriver

This object sends a MsgUnitRaw back to a client using jdbc interface, in the same JVM.

The I_CallbackDriver.update() method of the client will be invoked

Author:
xmlBlaster@marcelruff.info
See Also:
JdbcDriver

Field Summary
private  CallbackAddress callbackAddress
           
private  Global glob
           
private static java.util.logging.Logger log
           
private  java.lang.String ME
           
 
Constructor Summary
CallbackJdbcDriver()
           
 
Method Summary
 java.lang.String getName()
          Get a human readable name of this driver
 java.lang.String getProtocolId()
          Access the xmlBlaster internal name of the protocol driver.
 java.lang.String getRawAddress()
          Get the address how to access this driver.
 java.lang.String getType()
          Enforced by I_Plugin
 java.lang.String getVersion()
          Enforced by I_Plugin
 void init(Global glob, CallbackAddress callbackAddress)
          Get callback reference here.
 void init(Global glob, PluginInfo pluginInfo)
          This method is called by the PluginManager (enforced by I_Plugin).
 boolean isAlive()
           
 java.lang.String ping(java.lang.String qos)
          Ping to check if callback server is alive.
 I_ProgressListener registerProgressListener(I_ProgressListener listener)
          Register a listener for to receive information about the progress of incoming data.
 java.lang.String[] sendUpdate(MsgUnitRaw[] msgArr)
          This sends the SQL query to the JDBC service for processing.
 void sendUpdateOneway(MsgUnitRaw[] msgArr)
          The oneway variant, without return value.
 void shutdown()
          This method shuts down the driver.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ME

private java.lang.String ME

glob

private Global glob

log

private static java.util.logging.Logger log

callbackAddress

private CallbackAddress callbackAddress
Constructor Detail

CallbackJdbcDriver

public CallbackJdbcDriver()
Method Detail

getName

public java.lang.String getName()
Get a human readable name of this driver

Specified by:
getName in interface I_CallbackDriver

getProtocolId

public java.lang.String getProtocolId()
Access the xmlBlaster internal name of the protocol driver.

Specified by:
getProtocolId in interface I_CallbackDriver
Returns:
"JDBC"

getType

public java.lang.String getType()
Enforced by I_Plugin

Specified by:
getType in interface I_Plugin

getVersion

public java.lang.String getVersion()
Enforced by I_Plugin

Specified by:
getVersion in interface I_Plugin

init

public void init(Global glob,
                 PluginInfo pluginInfo)
This method is called by the PluginManager (enforced by I_Plugin).

Specified by:
init in interface I_Plugin
See Also:
I_Plugin.init(org.xmlBlaster.util.Global,org.xmlBlaster.util.plugin.PluginInfo)

getRawAddress

public java.lang.String getRawAddress()
Get the address how to access this driver.

Specified by:
getRawAddress in interface I_CallbackDriver
Returns:
null

init

public void init(Global glob,
                 CallbackAddress callbackAddress)
          throws XmlBlasterException
Get callback reference here.

This method is enforced by interface I_CallbackDriver and is called by xmlBlaster after instantiation of this class, telling us the address to callback.

Specified by:
init in interface I_CallbackDriver
Parameters:
callbackAddress - Contains the stringified jdbc callback handle of the client
Throws:
XmlBlasterException

sendUpdate

public final java.lang.String[] sendUpdate(MsgUnitRaw[] msgArr)
                                    throws XmlBlasterException
This sends the SQL query to the JDBC service for processing.

This method is enforced by interface I_CallbackDriver and is called by xmlBlaster

Specified by:
sendUpdate in interface I_CallbackDriver
Parameters:
msgArr - Array of all messages to send, is guaranteed to never be null
Returns:
Clients should return a qos as follows. An empty qos string "" is valid as well and interpreted as OK
  <qos>
     <state id='OK'/>  <!-- Client processing state OK | ERROR ... see Constants.java -->
  </qos>
 
Throws:
e.id="CallbackFailed", - should be caught and handled appropriate
XmlBlasterException

sendUpdateOneway

public void sendUpdateOneway(MsgUnitRaw[] msgArr)
                      throws XmlBlasterException
The oneway variant, without return value.

Specified by:
sendUpdateOneway in interface I_CallbackDriver
Parameters:
msgArr - Array of all messages to send, is guaranteed to never be null
Throws:
XmlBlasterException - Is never from the client (oneway).

ping

public final java.lang.String ping(java.lang.String qos)
                            throws XmlBlasterException
Ping to check if callback server is alive.

Specified by:
ping in interface I_CallbackDriver
Parameters:
qos - Currently not looked at, please pass an empty string ""
Returns:
"<qos><state id='OK'/></qos>"
Throws:
XmlBlasterException
See Also:
I_CallbackDriver.ping(String)

registerProgressListener

public I_ProgressListener registerProgressListener(I_ProgressListener listener)
Description copied from interface: I_CallbackDriver
Register a listener for to receive information about the progress of incoming data. Only one listener is supported, the last call overwrites older calls.

Specified by:
registerProgressListener in interface I_CallbackDriver
Parameters:
listener - Your listener, pass 0 to unregister.
Returns:
The previously registered listener or 0

shutdown

public void shutdown()
This method shuts down the driver.

Specified by:
shutdown in interface I_Plugin

isAlive

public boolean isAlive()
Specified by:
isAlive in interface I_CallbackDriver
Returns:
true if the plugin is still alive, false otherwise

xmlBlaster 2.2.0 API

Copyright © 1999-2014 The xmlBlaster.org contributers.