Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.codehaus.activemq.store.bdb
Class BDbMessageStore

    java.lang.Object
      org.codehaus.activemq.store.bdb.BDbMessageStore

All Implemented Interfaces:
  MessageStore, Service

Direct Known Subclasses:
  BDbTopicMessageStore

public class BDbMessageStore
extends java.lang.Object
implements MessageStore

Version:
  $Revision: 1.2 $

Constructor Summary
`BDbMessageStore(com.sleepycat.je.Database database, com.sleepycat.je.SecondaryDatabase secondaryDatabase, com.sleepycat.je.SecondaryConfig secondaryConfig, SequenceNumberCreator sequenceNumberCreator, WireFormat wireFormat)`

Method Summary
`MessageIdentity` | `addMessage(ActiveMQMessage message)`
`protected byte[]` | `asBytes(ActiveMQMessage message)`
`protected byte[]` | `asBytes(java.lang.String messageID)`
`protected void` | `checkClosed()`
`protected com.sleepycat.je.DatabaseEntry` | `createKey(java.lang.String messageID)`
`protected ActiveMQMessage` | `extractMessage(com.sleepycat.je.DatabaseEntry value)`
`protected java.lang.String` | `extractString(com.sleepycat.je.DatabaseEntry entry)`
`protected com.sleepycat.je.DatabaseEntry` | `findSequenceNumber(java.lang.String messageID)` Iterates through from the start of the collection until the given message ID is found
`MessageContainer` | `getContainer()`
`com.sleepycat.je.CursorConfig` | `getCursorConfig()`
`protected com.sleepycat.je.Database` | `getDatabase()`
`ActiveMQMessage` | `getMessage(MessageIdentity identity)` Looks up a message using either the String messageID or the messageNumber.
`protected com.sleepycat.je.SecondaryDatabase` | `getSecondaryDatabase()`
`protected com.sleepycat.je.DatabaseEntry` | `getSequenceNumberKey(MessageIdentity identity)` Returns the sequence number key for the given message identity.
`void` | `recover(QueueMessageContainer container)` Recover any messages to be delivered onto the dispatch queue.
`void` | `removeMessage(MessageIdentity identity, MessageAck ack)`
`void` | `setMessageContainer(MessageContainer container)`
`void` | `start()` Called to start the service
`void` | `stop()` Called to shutdown the service

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### BDbMessageStore

    public BDbMessageStore(com.sleepycat.je.Database database,
                           com.sleepycat.je.SecondaryDatabase secondaryDatabase,
                           com.sleepycat.je.SecondaryConfig secondaryConfig,
                           SequenceNumberCreator sequenceNumberCreator,
                           WireFormat wireFormat)

Method Detail

### setMessageContainer

    public void setMessageContainer(MessageContainer container)

### addMessage

    public MessageIdentity addMessage(ActiveMQMessage message)
                               throws JMSException

  Specified by:
    `addMessage` in interface `MessageStore`
  Throws:
    `JMSException`

### getMessage

    public ActiveMQMessage getMessage(MessageIdentity identity)
                               throws JMSException

  Description copied from interface: `MessageStore`
  Looks up a message using either the String messageID or the messageNumber. Implementations are encouraged to fill in the missing key if its easy to do so.

  Specified by:
    `getMessage` in interface `MessageStore`
  Parameters:
    `identity` - which contains either the messageID or the messageNumber
  Returns:
    the message or null if it does not exist
  Throws:
    `JMSException`

### removeMessage

    public void removeMessage(MessageIdentity identity,
                              MessageAck ack)
                       throws JMSException

  Specified by:
    `removeMessage` in interface `MessageStore`
  Throws:
    `JMSException`

### recover

    public void recover(QueueMessageContainer container)
                 throws JMSException

  Description copied from interface: `MessageStore`
  Recover any messages to be delivered onto the dispatch queue.

  Only called when this store is used for durable queues.

  Specified by:
    `recover` in interface `MessageStore`
  Parameters:
    `container` -
  Throws:
    `JMSException`

### start

    public void start()
               throws JMSException

  Description copied from interface: `Service`
  Called to start the service

  Specified by:
    `start` in interface `Service`
  Throws:
    `JMSException`

### stop

    public void stop()
              throws JMSException

  Description copied from interface: `Service`
  Called to shutdown the service

  Specified by:
    `stop` in interface `Service`
  Throws:
    `JMSException`

### getSecondaryDatabase

    protected com.sleepycat.je.SecondaryDatabase getSecondaryDatabase()

### getDatabase

    protected com.sleepycat.je.Database getDatabase()

### getCursorConfig

    public com.sleepycat.je.CursorConfig getCursorConfig()

### getContainer

    public MessageContainer getContainer()

### checkClosed

    protected void checkClosed()
                        throws AlreadyClosedException

  Throws:
    `AlreadyClosedException`

### getSequenceNumberKey

    protected com.sleepycat.je.DatabaseEntry getSequenceNumberKey(MessageIdentity identity)
                                                           throws com.sleepycat.je.DatabaseException

  Returns the sequence number key for the given message identity. If the sequence number is not available it will be queried (which is slow & will generate a warning as it is not recommended) and then it'll be cached inside the MessageIdentity

  Parameters:
    `identity` -
  Returns:
  Throws:
    `com.sleepycat.je.DatabaseException`

### createKey

    protected com.sleepycat.je.DatabaseEntry createKey(java.lang.String messageID)

### findSequenceNumber

    protected com.sleepycat.je.DatabaseEntry findSequenceNumber(java.lang.String messageID)
                                                         throws com.sleepycat.je.DatabaseException

  Iterates through from the start of the collection until the given message ID is found

  Parameters:
    `messageID` -
  Returns:
  Throws:
    `com.sleepycat.je.DatabaseException`

### extractString

    protected java.lang.String extractString(com.sleepycat.je.DatabaseEntry entry)

### extractMessage

    protected ActiveMQMessage extractMessage(com.sleepycat.je.DatabaseEntry value)
                                      throws java.io.IOException

  Throws:
    `java.io.IOException`

### asBytes

    protected byte[] asBytes(ActiveMQMessage message)
                      throws java.io.IOException,
                             JMSException

  Throws:
    `java.io.IOException`
    `JMSException`

### asBytes

    protected byte[] asBytes(java.lang.String messageID)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004 Protique, Ltd.. All Rights Reserved.