org.apache.cayenne.remote
Class BaseConnection

java.lang.Object
  extended by org.apache.cayenne.remote.BaseConnection
All Implemented Interfaces:
ClientConnection
Direct Known Subclasses:
HessianConnection, LocalConnection

public abstract class BaseConnection
extends Object
implements ClientConnection

A common base class for concrete ClientConnection implementations. Provides message logging functionality via commons-logging.

Since:
1.2

Field Summary
protected  org.apache.commons.logging.Log logger
           
protected  long messageId
           
 
Constructor Summary
protected BaseConnection()
          Default constructor that initializes logging and a single threaded EventManager.
 
Method Summary
protected abstract  void beforeSendMessage(ClientMessage message)
          Called before logging the beginning of message processing.
protected abstract  Object doSendMessage(ClientMessage message)
          The worker method invoked to process message.
 long getProcessedMessagesCount()
          Returns a count of processed messages since the beginning of life of this connector.
 Object sendMessage(ClientMessage message)
          Invokes 'beforeSendMessage' on self, then invokes 'doSendMessage'.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.cayenne.remote.ClientConnection
getServerEventBridge
 

Field Detail

logger

protected org.apache.commons.logging.Log logger

messageId

protected long messageId
Constructor Detail

BaseConnection

protected BaseConnection()
Default constructor that initializes logging and a single threaded EventManager.

Method Detail

sendMessage

public Object sendMessage(ClientMessage message)
                   throws CayenneRuntimeException
Invokes 'beforeSendMessage' on self, then invokes 'doSendMessage'. Implements basic logging functionality. Do not override this method unless absolutely necessary. Override 'beforeSendMessage' and 'doSendMessage' instead.

Specified by:
sendMessage in interface ClientConnection
Throws:
CayenneRuntimeException

getProcessedMessagesCount

public long getProcessedMessagesCount()
Returns a count of processed messages since the beginning of life of this connector.


beforeSendMessage

protected abstract void beforeSendMessage(ClientMessage message)
                                   throws CayenneRuntimeException
Called before logging the beginning of message processing.

Throws:
CayenneRuntimeException

doSendMessage

protected abstract Object doSendMessage(ClientMessage message)
                                 throws CayenneRuntimeException
The worker method invoked to process message.

Throws:
CayenneRuntimeException


Copyright © 2001-2011 Apache Cayenne. All Rights Reserved.