|
Class / Interface in Package javax.jms |
Functionality |
JLCA 3.0 Coverage |
Description |
|
BytesMessage
StreamMessage |
BytesMessage is used to send a message containing a stream of uninterpreted bytes.
StreamMessage is used to send a stream of primitive types in Java. |
Converted |
Converted to System.Messaging.Message. The message contents are written /read to/from the property BodyStream using System.IO classes such as BinaryWriter and BinaryReader. |
|
Connection
ConnectionFactory
QueueConnection
QueueConnectionFactory
TopicConnection
TopicConnectionFactory |
Interfaces supporting the connection facility. |
Not
Converted |
System.Messaging.Message.MessageQueue takes care of the connection implicitly. |
|
ConnectionConsumer
ServerSession
ServerSessionPool |
Interfaces supporting pool facility to process messages on the server. |
Not
Converted |
In .NET Framework, MSMQ does not support a pool-like facility. |
|
ConnectionMetaData |
ConnectionMetaData provides information describing the Connection object. |
Not
Converted |
.NET Framework has only metadata about queuing. (System.Messaging.Message.SenderVersion). |
|
DeliveryMode |
DeliveryMode describes the delivery mode supported by JMS– PERSISTENT or NON-PERSISTENT |
Converted |
Its field's values are converted to boolean values as they are used by System.Messaging.Message.Recoverable. |
|
Destination
Queue |
Destination object encapsulates a provider-specific address.
Queue object encapsulates a provider-specific queue name. |
Converted |
In .NET Framework a queue reference is simply a string path. So, they are converted to System.String. |
|
ExceptionListener |
JMS provider informs the Connection object's registered ExceptionListener about connection problems. |
Not
Converted |
In .NET Framework, registered clients are not notified about connection problems. |
|
IllegalStateException |
This exception is thrown when a method is invoked at an illegal or inappropriate time or if the provider is not in an appropriate state for the requested operation. |
Converted |
Converted to System.InvalidOperationException as it has a similar behavior. |
|
InvalidClientIDException |
This exception is thrown when a client attempts to set a connection's client ID to a value that is rejected by a provider. |
Not
Converted |
In .NET Framework, a connection’s client ID could never be invalid as the equivalent property is read-only. |
|
InvalidDestinationException
JMSException
JMSSecurityException |
These exceptions are thrown when provider considers destination or name/password as invalid. |
Converted |
System.Messaging.MessageQueueException is used to notify .NET Framework’s equivalent faults. |
|
InvalidSelectorException |
This exception is thrown when a JMS client attempts to give a provider a message selector with invalid syntax. |
Not
Converted |
In .NET Framework, approach for message selectors is not supported. |
|
MessageConsumer
MessageProducer
|
MessageConsumer is used to receive messages from a destination.
MessageProducer is used to send messages to a destination. |
Converted |
System.Messaging.MessageQueue provides a similar approach in .NET Framework Messaging. |
|
MessageEOFException |
This exception is thrown when an unexpected end of stream has been reached when a StreamMessage or BytesMessage is being read |
Converted |
Converted to System.IO.EndOfStreamException. |
|
MessageListener |
MessageListener is used to receive asynchronously delivered messages. |
Converted |
In the onMessage method some lines of code are added to support the asynchronous message delivery in .NET Framework. |
|
MessageFormatException MessageNotReadableEx
MessageNotWritableEx |
These exceptions are thrown when JMS Client attempts to read write-only message or to write to read-only message or to use a datatype not supported by provider. |
Not
Converted |
.NET Framework’s equivalent for StreamMessage will never throw a similar exception.
So a workaround could require adding near places where these exceptions are caught - the specific code to check the message availability and integrity. |
|
MapMessage
Message
ObjectMessage
TextMessage
|
Message is root interface of all messages.
MapMessage is used to send a set of name-value pairs.
ObjectMessage is used to send a message that contains a serializable object.
TextMessage is used to send message containing java.lang.String. |
Converted |
Converted to System.Messaging.Message because the property Body could contain different kinds of messages.
To convert MapMessage, it wraps a SortedList.
To convert ObjectMessage, it wraps the respective object. To convert TextMessage, it wraps a System.String.
Message custom properties (application-defined) are not supported in .NET Framework. |
|
QueueBrowser
QueueReceiver
QueueSender
|
QueueBrowser is used to look at messages on a queue without removing them.
QueueReceiver is used to receive messages that have been delivered to a queue.
QueueSender is used to send messages to a queue. |
Converted |
System.Messaging.MessageQueue provides a similar approach in .NET Framework Messaging. |
|
QueueRequestor
TopicRequestor |
These helper classes simplifies making of service requests. |
Not
Converted |
No equivalent functionality is found in .NET Framework.
It can be implemented by the user. |
|
QueueSession
Session
TopicSession |
In Java, sessions are used to create different kinds of message objects, message producers and consumers, and to manage transactions. |
Not
Converted |
In .NET Framework, this functionality is implemented using classes Message, MessageQueue and MessageQueueTransaction. |
|
ResourceAllocationException
TransactionInProgressException
TransactionRolledBackException |
Exceptions |
Converted |
These exceptions are converted to a more general exception (System.Exception). |
|
TemporaryTopic |
TemporaryTopic object is a unique Topic object created for the duration of a TopicConnection. |
Not
Converted |
In .NET Framework, the approach for a publish/subscribe system does not support the creation of temporary topics. |
|
TemporaryQueue |
TemporaryQueue object is a unique Queue object created for the duration of a QueueConnection. |
Converted |
It is converted to System.String to represent a temporary queue created by a Support Class.
In .NET Framework, there are no temporary queues; so the converted code creates a physical one. It is expensive and it must be deleted explicitly. |
|
Topic |
Topic object encapsulates a provider-specific topic name. |
Not
Converted |
In .NET Framework, the term "topic" is different.
The multiple destination messaging is represented using different types of string formats. |
|
TopicPublisher
TopicSubscriber |
TopicPublisher is used to publish messages on a topic.
TopicSubscriber is used to receive messages that have been published to a topic. |
Converted |
System.Messaging.MessageQueue provides a similar approach in .NET Framework Messaging. |
|
XAConnection
XAConnectionFactory
XAQueueConnection
XAQueueSession
XASession
XATopicConnection
XATopicSession |
These are interfaces to provide XA interoperability. |
Not
Converted |
For a class to be able to use XA interoperability in .NET Framework, it should inherit from System.EnterpriseServices.ServicedComponent. |