|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
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 |
protected Destination |
replyTo
JMSメッセージのヘッダに設定される replyTo |
コンストラクタの概要 | |
---|---|
AbstractMessageFactory()
インスタンスを構築します。 |
メソッドの概要 | |
---|---|
void |
addProperties(Map<String,Object> properties)
指定された Map に含まれるマッピングを全てプロパティとして設定します。 |
void |
addProperty(String name,
Object value)
指定された名前を持つプロパティ値を設定します。 |
MSGTYPE |
createMessage(Session session)
JMSセッションからJMSメッセージを作成して返します。 |
protected abstract MSGTYPE |
createMessageInstance(Session session)
JMSメッセージのインスタンスを作成して返します。 |
void |
setCorrelationID(String correlationID)
JMSメッセージのヘッダに設定される correlationID を文字列で設定します。 |
void |
setCorrelationIDAsBytes(byte[] correlationIDAsBytes)
correlationID をバイト列で設定します。 |
void |
setReplyTo(Destination replyTo)
replyTo をバイト列で設定します。 |
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 Destination replyTo
replyTo
protected final Map<String,Object> properties
Map
コンストラクタの詳細 |
---|
public AbstractMessageFactory()
メソッドの詳細 |
---|
public void setCorrelationID(String correlationID)
MessageFactory
の記述: correlationID
を文字列で設定します。
設定された値は作成されたJMSメッセージのMessage.setJMSCorrelationID(String)
でヘッダに設定されます。
MessageFactory<MSGTYPE extends Message>
内の setCorrelationID
correlationID
- JMSメッセージのヘッダに設定される
correlationID
public void setCorrelationIDAsBytes(byte[] correlationIDAsBytes)
MessageFactory
の記述: correlationID
をバイト列で設定します。
設定された値は作成されたJMSメッセージのMessage.setJMSCorrelationIDAsBytes(byte[])
でヘッダに設定されます。
MessageFactory<MSGTYPE extends Message>
内の setCorrelationIDAsBytes
correlationIDAsBytes
- JMSメッセージのヘッダに設定されるcorrelationID
public void setReplyTo(Destination replyTo)
MessageFactory
の記述: replyTo
をバイト列で設定します。
設定された値は作成されたJMSメッセージのMessage.setJMSReplyTo(Destination)
でヘッダに設定されます。
MessageFactory<MSGTYPE extends Message>
内の setReplyTo
replyTo
- JMSメッセージのヘッダに設定されるreplyTo
public void addProperty(String name, Object value)
MessageFactory
の記述:
設定された値は作成されたJMSメッセージのMessage.setObjectProperty(java.lang.String, java.lang.Object)
でプロパティに設定されます。
MessageFactory<MSGTYPE extends Message>
内の addProperty
name
- プロパティ名value
- プロパティ値public void addProperties(Map<String,Object> properties)
MessageFactory
の記述: Map
に含まれるマッピングを全てプロパティとして設定します。
設定された値は作成されたJMSメッセージのMessage.setObjectProperty(java.lang.String, java.lang.Object)
でプロパティに設定されます。
MessageFactory<MSGTYPE extends Message>
内の addProperties
properties
- プロパティpublic MSGTYPE createMessage(Session session)
MessageFactory
の記述:
作成されたJMSメッセージのヘッダおよびプロパティはこのコンポーネントからコピーされます。 JMSメッセージのペイロードは実装クラスのsetupPayload()
メソッドで設定されます。
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メッセージにペイロードを設定できなかった場合にスローされます
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |