Oracle Fusion Middleware User Messaging Service 11.1.1.3.0 Java API Reference
E14011-02

oracle.sdp.messaging
Interface MessageInfo

All Superinterfaces:
Externalizable, Serializable

public interface MessageInfo
extends Externalizable

This interface defines all delivery related properties about the message. All of these properties are optional with default values set by the constructor.

Since:
11.0.0

Method Summary
 Calendar getAcceptedDate()
          Get the date and time when this message was accepted.
 java.lang.String getApplicationInstanceName()
          Get the application instance name.
 java.lang.String getApplicationName()
          Get the application name.
 java.lang.String getCarrier()
          Get the carrier name for the message.
 int getChunkSize()
          Get the message chunk size of the sending request.
 java.lang.String getCorrelationId()
          Get the message correlation id.
 int getCostLevel()
          Get the desired cost level of the message.
 int getDelay()
          Get the delay to send the message.
 java.lang.String getDriver()
          Get driver instance name.
 int getExpiration()
          Get the expiration of the message.
 java.lang.String getGatewayMessageId()
          Get the gateway (or driver) assigned id for this message.
 StatusType getHighestStatusLevel()
          Get the highest status level requested for this message.
 int getMaxChunks()
          Get the maximum message chunks of the sending request.
 MessagePriorityType getPriority()
          Get the priority of the message.
 java.lang.String getProtocol()
          Get the protocol for the desired driver that can deliver this message.
 MessageReliabilityType getReliability()
          Get the reliability type of the message.
 MessageSessionType getSession()
          Get the session type.
 int getSpeedLevel()
          Get the desired speed level of the message.
 MessageTrackingType getTracking()
          Get the tracking type desired in sending the message.
 void setAcceptedDate(Calendar date)
          Set the date and time when this message was accepted.
 void setApplicationInstanceName(java.lang.String instanceName)
          Set the application instance name.
 void setApplicationName(java.lang.String applicationName)
          Set the application name.
 void setCarrier(java.lang.String carrier)
          Set the carrier name for the desired driver that can deliver this message.
 void setChunkSize(int size)
          Set the message chunk size of the sending request.
 void setCorrelationId(java.lang.String id)
          Set the message correlation id.
 void setCostLevel(int cost)
          Set the desired sending cost level of the message.
 void setDelay(int delay)
          Set the delay to send the message.
 void setDriver(java.lang.String driver)
          For a sending message, set the desired name of the driver that should deliver the message.
 void setExpiration(int expiration)
          Set the expiration of the message.
 void setGatewayMessageId(java.lang.String gatewayMessageId)
          Set the gateway (or driver) assigned id for this message.
 void setHighestStatusLevel(StatusType statusType)
          Set the highest status level requested for this message.
 void setMaxChunks(int count)
          Set the maximum message chunks of the sending request.
 void setPriority(MessagePriorityType priority)
          Set the priority of the message.
 void setProtocol(java.lang.String protocol)
          Set the protocol name for the desired driver that can deliver this message.
 void setReliability(MessageReliabilityType reliability)
          Set the desired reliability type of the message.
 void setSession(MessageSessionType sessionType)
          Sets the desired session type.
 void setSpeedLevel(int speed)
          Set the desired sending speed level of the message.
 void setTracking(MessageTrackingType tracking)
          Set the desired tracking type in sending the message.
 
Methods inherited from interface java.io.Externalizable
readExternal, writeExternal
 

Method Detail

getAcceptedDate

Calendar getAcceptedDate()
Get the date and time when this message was accepted.

Returns:
the date and time.

getApplicationInstanceName

java.lang.String getApplicationInstanceName()
Get the application instance name.

Returns:
the application instance name.

getApplicationName

java.lang.String getApplicationName()
Get the application name.

Returns:
the application name.

getCarrier

java.lang.String getCarrier()
Get the carrier name for the message.

Returns:
the carrier name for the message.

getChunkSize

int getChunkSize()
Get the message chunk size of the sending request.

Returns:
the message chunk size of the sending request.

getCorrelationId

java.lang.String getCorrelationId()
Get the message correlation id.

For a received message, if the message is in a session, the correlation id of the message just sent to the from-device is used as the correlation id of this received message. If that message just sent to the from-device doesn't have a correlation id, then its message id is used. If the message is not in a session, the correlation id won't be set.

For a message to be sent, the correlation id should be set by the application. If it is not set, then there is no correlation id. The correlation id can be used to link many sending/received messages together so that it is easy to find out how messages are exchanged in one transaction.

When a message is passed to a driver, the correlation id should be ignored by the driver. Actually, when a message is passed to a driver, the correlation id is re-set to some unique message store id that can be used by the driver to generate unique driver/gateway message id if necessary.

Returns:
the message correlation id.

getCostLevel

int getCostLevel()
Get the desired cost level of the message.

Returns:
the sending cost level.

getDelay

int getDelay()
Get the delay to send the message. Delay means how long later the message should be sent out.

Returns:
the delay in seconds.

getDriver

java.lang.String getDriver()
Get driver instance name. For a received message, indicates the driver that received the message.

Returns:
the driver instance name.

getExpiration

int getExpiration()
Get the expiration of the message. Expiration means how long later in seconds the message should expire. If its value is negative or zero, it never expires.

Returns:
the expiration in seconds.

getGatewayMessageId

java.lang.String getGatewayMessageId()
Get the gateway (or driver) assigned id for this message.

Returns:
the gateway message id for this message.

getHighestStatusLevel

StatusType getHighestStatusLevel()
Get the highest status level requested for this message.

Returns:
the highest status level requested.

getMaxChunks

int getMaxChunks()
Get the maximum message chunks of the sending request.

Returns:
the maximum message chunks of the sending request.

getPriority

MessagePriorityType getPriority()
Get the priority of the message. The message is saved in a queue for delivery. The queue is sorted based on time and priority. The higher the priority is, the sooner the message will be delivered.

Returns:
the priority.

getProtocol

java.lang.String getProtocol()
Get the protocol for the desired driver that can deliver this message.

Returns:
the protocol name

getReliability

MessageReliabilityType getReliability()
Get the reliability type of the message. RELIABLE indicates that the application wants the message to be delivered with guarantee. If NOT_RELIABLE, when the message is lost or is not delivered, the service provider does not retry.

Returns:
the reliability type.

getSession

MessageSessionType getSession()
Get the session type.

Returns:
the session type.

getSpeedLevel

int getSpeedLevel()
Get the desired speed level of the message.

Returns:
the sending speed level.

getTracking

MessageTrackingType getTracking()
Get the tracking type desired in sending the message. Tracking indicates whether the application may want the tracking information of the message to send.

Returns:
the tracking type.

setAcceptedDate

void setAcceptedDate(Calendar date)
Set the date and time when this message was accepted.

Parameters:
the - date and time.

setApplicationInstanceName

void setApplicationInstanceName(java.lang.String instanceName)
Set the application instance name.

Parameters:
instanceName - the application instance name.

setApplicationName

void setApplicationName(java.lang.String applicationName)
Set the application name.

Parameters:
applicationName - the application name.

setCarrier

void setCarrier(java.lang.String carrier)
Set the carrier name for the desired driver that can deliver this message. This is an optional criterion used in message routing (driver selection). If set, the value is matched against the drivers' supported carriers.

Parameters:
carrier - the carrier name.

setChunkSize

void setChunkSize(int size)
Set the message chunk size of the sending request.

Parameters:
size - the message chunk size of the sending request.

setCorrelationId

void setCorrelationId(java.lang.String id)
Set the message correlation id.

Parameters:
id - the message correlation id.

setCostLevel

void setCostLevel(int cost)
Set the desired sending cost level of the message. Cost level is an optional criterion used in message routing (driver selection). Its value can be in [0 .. 10]. 0 is least expensive, 10 is most expensive. If the value is not in this range, it means the cost level is irrelevant.

The default level, if not set, is 0.

Parameters:
cost - the desired sending cost level.

setDelay

void setDelay(int delay)
Set the delay to send the message. Delay means how long later the message should be sent out.

Parameters:
delay - the delay in seconds.

setDriver

void setDriver(java.lang.String driver)
For a sending message, set the desired name of the driver that should deliver the message. Multiple drivers can be specified as "driver1:driver2", i.e. ':' must be used to separate drivers. For a received message, the receiving driver will set its name.

Parameters:
driver - the driver instance name.

setExpiration

void setExpiration(int expiration)
Set the expiration of the message. Expiration means how long later in seconds the message should expire. If its value is negative or zero, it never expire.

Parameters:
expiration - the expiration in seconds.

setGatewayMessageId

void setGatewayMessageId(java.lang.String gatewayMessageId)
Set the gateway (or driver) assigned id for this message. This is used within the context of a received message. It is ignored for a sending message.

Parameters:
gatewayMessageId - the gateway message id for this message.

setHighestStatusLevel

void setHighestStatusLevel(StatusType statusType)
Set the highest status level requested for this message.

Parameters:
statusType - the highest status level requested.

setMaxChunks

void setMaxChunks(int count)
Set the maximum message chunks of the sending request.

Parameters:
count - the maximum message chunks of the sending request.

setPriority

void setPriority(MessagePriorityType priority)
Set the priority of the message. The message is saved in a queue for delivery. The queue is sorted based on time and priority. The higher the priority is, the sooner the message will be delivered.

The default priority, if not set, is NORMAL.

Parameters:
priority - the priority.

setProtocol

void setProtocol(java.lang.String protocol)
Set the protocol name for the desired driver that can deliver this message. This is an optional criterion used in message routing (driver selection). If set, the value is matched against the drivers' supported protocols.

Parameters:
protocol - the protocol name

setReliability

void setReliability(MessageReliabilityType reliability)
Set the desired reliability type of the message. Valid values defined are NOT_RELIABLE and RELIABLE. RELIABLE means that the application wants the message to send to be delivered with guarantee. NOT_RELIABLE indicates that if the message is lost or not delivered, the service provider does not retry.

The default, if not set, is RELIABLE.

Parameters:
reliability - the desired reliability type.

setSession

void setSession(MessageSessionType sessionType)
Sets the desired session type. Valid values are NO_SESSION, OUTBOUND_SESSION, INBOUND_SESSION and FULL_SESSION. In sending a message, if you want the reply come to the same application instance, you should specify INBOUND_SESSION.

The default, if not set, is NO_SESSION.

Parameters:
sessionType - the desired session type.

setSpeedLevel

void setSpeedLevel(int speed)
Set the desired sending speed level of the message. Speed level is an optional criterion used in message routing (driver selection). Its value can be in [0 .. 10]. 0 is slowest, 10 is fastest. If the value is not in this range, it means the speed level is irrelevant.

The default level, if not set, is 0.

Parameters:
speed - the desired sending speed level.

setTracking

void setTracking(MessageTrackingType tracking)
Set the desired tracking type in sending the message. Valid values for tracking type are NO_TRACK, TIGHT_NOTIFICATION, TIGHT_FULL_TRACK, LOOSE_NOTIFICATION, LOOSE_FULL_TRACK. Depending on protocol, several status reports maybe available for each message. For example in SMS, status on the message reaching the SMSC, the message reaching the handset, the message being read could all potentially generate status report depending on the telco. The kind of asynchronous message status reported by Messaging is based on the type of tracking requested. A status report might be sent to the same application instance that issued the message, or another instance that has the same application name, depending on the tracking type set.

The default, if not set, is TIGHT_NOTIFICATION.

Parameters:
tracking - the desired tracking type.

Oracle Fusion Middleware User Messaging Service 11.1.1.3.0 Java API Reference
E14011-02

Copyright © 2010 Oracle and/or its affiliates. All rights reserved.