|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectorg.seasar.jms.core.message.impl.AbstractMessageFactory<MSGTYPE>
MSGTYPE
- JMSメッセージの型public abstract class AbstractMessageFactory<MSGTYPE extends Message>
JMSメッセージを作成するコンポーネントの抽象クラスです。
このコンポーネントはJMSセッションからJMSメッセージを作成します。作成されるJMSメッセージの型は型引数として示されます。 作成されたJMSメッセージのヘッダやプロパティはこのコンポーネントのプロパティに設定されているものがコピーされます。 JMSメッセージを生成する方法とそのペイロードを設定する方法はサブクラスに依存します。
このクラスおよびサブクラスはインスタンスモードPROTOTYPEで使われることを想定しており、スレッドセーフではありません。
フィールドの概要 | |
---|---|
protected String |
correlationID
JMSメッセージのヘッダに設定される correlationID |
protected byte[] |
correlationIDAsBytes
JMSメッセージのヘッダに設定される correlationID |
protected Map<String,Object> |
properties
JMSメッセージのプロパティに設定される Map |
コンストラクタの概要 | |
---|---|
AbstractMessageFactory()
インスタンスを構築します。 |
|
AbstractMessageFactory(Map<String,Object> properties)
インスタンスを構築します。 |
メソッドの概要 | |
---|---|
void |
addProperty(String name,
Object value)
指定された名前を持つプロパティ値を設定します。 |
MSGTYPE |
createMessage(Session session)
JMSセッションからJMSメッセージを作成して返します。 |
protected abstract MSGTYPE |
createMessageInstance(Session session)
JMSメッセージのインスタンスを作成して返します。 |
String |
getCorrelationID()
JMSメッセージのヘッダに設定される correlationID を文字列で返します。 |
byte[] |
getCorrelationIDAsBytes()
JMSメッセージのヘッダに設定される correlationID をバイト列で返します。 |
Object |
getProperty(String name)
指定された名前を持つプロパティ値を返します。 |
void |
setCorrelationID(String correlationID)
JMSメッセージのヘッダに設定される correlationID を文字列で設定します。 |
void |
setCorrelationIDAsBytes(byte[] correlationIDAsBytes)
correlationID をバイト列で設定します。 |
protected void |
setupHeader(Message message)
JMSメッセージのメッセージヘッダを設定します。 |
protected abstract void |
setupPayload(MSGTYPE message)
JMSメッセージのペイロードを設定します。 |
protected void |
setupProperties(Message message)
JMSメッセージのメッセージプロパティを設定します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
protected String correlationID
correlationID
protected byte[] correlationIDAsBytes
correlationID
protected final Map<String,Object> properties
Map
コンストラクタの詳細 |
---|
public AbstractMessageFactory()
public AbstractMessageFactory(Map<String,Object> properties)
properties
- JMSメッセージのプロパティに設定されるMap
メソッドの詳細 |
---|
public String getCorrelationID()
correlationID
を文字列で返します。
correlationID
public void setCorrelationID(String correlationID)
correlationID
を文字列で設定します。
設定された値は作成されたJMSメッセージのMessage.setJMSCorrelationID(java.lang.String)
でヘッダに設定されます。
correlationID
- JMSメッセージのヘッダに設定される
correlationID
public byte[] getCorrelationIDAsBytes()
correlationID
をバイト列で返します。
correlationID
public void setCorrelationIDAsBytes(byte[] correlationIDAsBytes)
correlationID
をバイト列で設定します。
設定された値は作成されたJMSメッセージのMessage.setJMSCorrelationIDAsBytes(byte[])
でヘッダに設定されます。
correlationIDAsBytes
- JMSメッセージのヘッダに設定されるcorrelationID
public Object getProperty(String name)
name
- プロパティ名
public void addProperty(String name, Object value)
設定された値は作成されたJMSメッセージのMessage.setObjectProperty(java.lang.String, java.lang.Object)
でプロパティに設定されます。
name
- プロパティ名value
- プロパティ値public MSGTYPE createMessage(Session session)
作成されたJMSメッセージのヘッダおよびプロパティはこのコンポーネントからコピーされます。
JMSメッセージのペイロードはサブクラスによって実装されるsetupPayload(MSGTYPE)
で設定されます。
MessageFactory<MSGTYPE extends Message>
内の createMessage
session
- JMSセッション
protected abstract MSGTYPE createMessageInstance(Session session) throws JMSException
サブクラス固有の方法でJMSメッセージを作成します。 作成されたJMSメッセージの型は型引数MSGTYPE
に
適合しなくてはなりません。
session
- JMSセッション
JMSException
- JMSメッセージを作成できなかった場合にスローされます。protected void setupHeader(Message message) throws JMSException
このインスタンスのプロパティの値をJMSメッセージのヘッダに設定します。
現在対応しているヘッダはMessage.setJMSCorrelationID(java.lang.String)
および
Message.setJMSCorrelationIDAsBytes(byte[])
だけです。
message
- JMSメッセージ
JMSException
- JMSメッセージにヘッダを設定できなかった場合にスローされますprotected void setupProperties(Message message) throws JMSException
このインスタンスにaddProperty(java.lang.String, java.lang.Object)
で設定された値をJMSメッセージのプロパティに設定します。
message
- JMSメッセージ
JMSException
- JMSメッセージにプロパティを設定できなかった場合にスローされますprotected abstract void setupPayload(MSGTYPE message) throws JMSException
message
- JMSメッセージ
JMSException
- JMSメッセージにペイロードを設定できなかった場合にスローされます
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |