activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mark Pollack" <mark.poll...@springsource.com>
Subject NMS API design question regarding AckMode
Date Thu, 29 May 2008 02:24:29 GMT
Hi,

 

I'm digging into the NMS API a bit more as I plan to release NMS support in
Spring.NET in the coming months (which James had a hand in as well) and I
have a question regarding the AcknowledgementMode enum.  The current values
are those in the JMS spec (DUPS_OK_ACKNOWLEDGE, AUTO_ACKNOWLEDGE,
CLIENT_ACKNOWLEDGE) and an additional one Transactional. 

 

Vendors typically provide additional ack modes for increased performance,
TIBCO EMS is the case I'm familiar with which also has
ExplicitClientAcknowledge, ExplicitClientDupsOkAcknowledge, and
NoAcknowledge. 

 

At the moment the NMS API can't support these modes, making it a
lowest-common denominator solution, something I feel that must be avoided if
it is to gain widespread use.  I've had a similar experience writing a
database wrapper class for ADO.NET and the use of vendor specific enums for
data types.  I ended up leaving the API very 'loose', i.e. method signature
just has 'Enum' in it and internally implementations can check to see if it
makes sense for them.  This has worked out well as far as I can tell.

 

Is it possible to follow the same approach in this case?

 

Cheers

Mark

 


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message