Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

org.objectweb.cjdbc.controller.virtualdatabase.protocol.ExecWriteRequest Class Reference

Inheritance diagram for org.objectweb.cjdbc.controller.virtualdatabase.protocol.ExecWriteRequest:

Inheritance graph
[legend]
Collaboration diagram for org.objectweb.cjdbc.controller.virtualdatabase.protocol.ExecWriteRequest:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ExecWriteRequest (AbstractWriteRequest request)
void scheduleRequest (DistributedRequestManager drm) throws SQLException
Object executeScheduledRequest (DistributedRequestManager drm) throws SQLException

Detailed Description

Execute a write request between several controllers.

Author:
Emmanuel Cecchet
Version:
1.0

Definition at line 40 of file ExecWriteRequest.java.


Constructor & Destructor Documentation

org.objectweb.cjdbc.controller.virtualdatabase.protocol.ExecWriteRequest.ExecWriteRequest AbstractWriteRequest  request  ) 
 

Parameters:
request write request to execute

Definition at line 45 of file ExecWriteRequest.java.

00046   {
00047     super(request);
00048   }


Member Function Documentation

Object org.objectweb.cjdbc.controller.virtualdatabase.protocol.ExecWriteRequest.executeScheduledRequest DistributedRequestManager  drm  )  throws SQLException [virtual]
 

See also:
org.objectweb.cjdbc.controller.virtualdatabase.protocol.DistributedRequest.executeScheduledRequest(org.objectweb.cjdbc.controller.requestmanager.distributed.DistributedRequestManager)

Implements org.objectweb.cjdbc.controller.virtualdatabase.protocol.DistributedRequest.

Definition at line 62 of file ExecWriteRequest.java.

References org.objectweb.cjdbc.common.sql.AbstractRequest.getSQLShortForm().

00064   {
00065     try
00066     {
00067       int execWriteRequestResult = 0;
00068       try
00069       {
00070         execWriteRequestResult = drm
00071             .loadBalanceExecWriteRequest((AbstractWriteRequest) request);
00072       }
00073       catch (AllBackendsFailedException e)
00074       {
00075         drm.updateAndNotifyExecWriteRequest((AbstractWriteRequest) request,
00076             false);
00077         drm.addFailedOnAllBackends(request);
00078         if (drm.getLogger().isDebugEnabled())
00079           drm
00080               .getLogger()
00081               .debug(
00082                   Translate
00083                       .get(
00084                           "virtualdatabase.distributed.write.all.backends.locally.failed",
00085                           request.getSQLShortForm(drm.getVirtualDatabase()
00086                               .getSQLShortFormLength())));
00087         return e;
00088       }
00089       drm.updateAndNotifyExecWriteRequest((AbstractWriteRequest) request, true);
00090       return new Integer(execWriteRequestResult);
00091     }
00092     catch (SQLException e)
00093     {
00094       drm.getLogger().warn(
00095           Translate.get("virtualdatabase.distributed.write.sqlexception", e
00096               .getMessage()), e);
00097       throw e;
00098     }
00099     catch (RuntimeException re)
00100     {
00101       drm.getLogger().warn(
00102           Translate.get("virtualdatabase.distributed.write.exception", re
00103               .getMessage()), re);
00104       throw new SQLException(re.getMessage());
00105     }
00106   }

void org.objectweb.cjdbc.controller.virtualdatabase.protocol.ExecWriteRequest.scheduleRequest DistributedRequestManager  drm  )  throws SQLException [virtual]
 

See also:
org.objectweb.cjdbc.controller.virtualdatabase.protocol.DistributedRequest.scheduleRequest(org.objectweb.cjdbc.controller.requestmanager.distributed.DistributedRequestManager)

Implements org.objectweb.cjdbc.controller.virtualdatabase.protocol.DistributedRequest.

Definition at line 53 of file ExecWriteRequest.java.

00055   {
00056     drm.scheduleExecWriteRequest((AbstractWriteRequest) request);
00057   }


The documentation for this class was generated from the following file:
Generated on Mon Apr 11 22:04:49 2005 for C-JDBC by  doxygen 1.3.9.1