summaryrefslogtreecommitdiff
path: root/java/client/src/main
Commit message (Collapse)AuthorAgeFilesLines
* Added a logger but only used to control the toString inclusion of password. ↵Martin Ritchie2007-07-201-10/+21
| | | | | | If in debug mode it will include password otherwise the password is "********". git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@558027 13f79535-47bb-0310-9956-ffa450edef68
* Update fix incorrect license headers.Martin Ritchie2007-07-182-22/+28
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@557306 13f79535-47bb-0310-9956-ffa450edef68
* Added additional information to hard-error logging in exceptionReceived.Martin Ritchie2007-07-171-4/+13
| | | | | | Fully expanded imports git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@556872 13f79535-47bb-0310-9956-ffa450edef68
* added public void declareAndBind(AMQDestination amqd)Arnaud Simon2007-06-271-0/+10
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@551167 13f79535-47bb-0310-9956-ffa450edef68
* Added additional information to log message when available to aid the ↵Martin Ritchie2007-06-271-32/+39
| | | | | | explination of a failed connection git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@551121 13f79535-47bb-0310-9956-ffa450edef68
* changed setText to use UTF8 as default encoder Arnaud Simon2007-06-201-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@549112 13f79535-47bb-0310-9956-ffa450edef68
* Various License header updates.Martin Ritchie2007-06-187-0/+147
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@548276 13f79535-47bb-0310-9956-ffa450edef68
* QPID-511 adjusted to use the ReadWriteThreadModel rather than setting ↵Martin Ritchie2007-06-151-5/+3
| | | | | | editing the filterChain directly which could cause problems when using an InVM transport due to the way the InVM transport alters the filter chain during a connect call. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@547627 13f79535-47bb-0310-9956-ffa450edef68
* QPID-465, now throws UnsupportedOperationException when sending to a null ↵Rupert Smith2007-06-121-9/+20
| | | | | | queue in QueueSender. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@546441 13f79535-47bb-0310-9956-ffa450edef68
* Removed log4j dependency from client. Using slf4j instead, end-user to ↵Rupert Smith2007-06-1144-698/+795
| | | | | | supply logging implementation as desired. Log4j used for tests. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@546190 13f79535-47bb-0310-9956-ffa450edef68
* QPID-402: FailoverException falling through to client. All blocking ↵Rupert Smith2007-06-0114-2043/+2735
| | | | | | operations now wrapped in failover support wrappers. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@543496 13f79535-47bb-0310-9956-ffa450edef68
* QPID-482 : Small performance tweaksRobert Godfrey2007-05-242-15/+13
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@541247 13f79535-47bb-0310-9956-ffa450edef68
* Documented all exception.Rupert Smith2007-05-2111-28/+77
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@540107 13f79535-47bb-0310-9956-ffa450edef68
* QPID-466 Removed Unsupported exception from setIntProperty with STRICT_AMQP setMartin Ritchie2007-05-151-5/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@538084 13f79535-47bb-0310-9956-ffa450edef68
* QPID-466 Changes to FieldTable along with corresponding PropertyValueTest to ↵Martin Ritchie2007-05-044-60/+192
| | | | | | limit the Java client to only AMQP 0-8 compliant values. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@535309 13f79535-47bb-0310-9956-ffa450edef68
* QPID-466 Create STRICT_AMQP System property to disable JMS extensions in ↵Martin Ritchie2007-04-302-140/+232
| | | | | | | | | Java client. Updated to allow the use of durable subscriptions but it will not be as clean as with the extensions. Selectors are also now disabled. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@533764 13f79535-47bb-0310-9956-ffa450edef68
* QPID-476 : Remove duplicate map of channelId to sessionRobert Godfrey2007-04-304-94/+28
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@533721 13f79535-47bb-0310-9956-ffa450edef68
* QPID-466 Create STRICT_AMQP System property to disable JMS extensions in ↵Martin Ritchie2007-04-261-11/+55
| | | | | | | | Java client. This disables the JMS features that rely upon Qpid Java broker specific features. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@532786 13f79535-47bb-0310-9956-ffa450edef68
* White Space changesMartin Ritchie2007-04-231-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@531518 13f79535-47bb-0310-9956-ffa450edef68
* QPID-472 - Creation of TemporaryQueues will not guarantee unique queue names ↵Martin Ritchie2007-04-231-11/+8
| | | | | | | | if created rapidly. Updated TemporaryQueueTest.java so that it checks Headers/Queue/Topic for unroutable/mandatory messages beig returned. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@531512 13f79535-47bb-0310-9956-ffa450edef68
* Made IMMEDIATE_PREFETCH to allow access from additional test class.Martin Ritchie2007-04-201-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@530685 13f79535-47bb-0310-9956-ffa450edef68
* QPID-455 Pre-fetched messages can cause problems with client tools. Set ↵Martin Ritchie2007-04-191-17/+29
| | | | | | | | | | | IMMEDIATE_PREFETCH="true" for previous behaviour. Inverted check now setting System proprety IMMEDIATE_PREFETCH="true" will cause existing messages to be immediately pre-fetched to the newly registered consumer. Solved out standing broker issues see QPID-458 and QPID-459. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@530442 13f79535-47bb-0310-9956-ffa450edef68
* QPID-455 Prefetched messages can cause problems with client tools.Martin Ritchie2007-04-181-26/+32
| | | | | | Removed the changes as this was causing problems. Guarded with a check for now but solution is till not correct. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@530049 13f79535-47bb-0310-9956-ffa450edef68
* Removed e.printstacktrace that sneaked in with the other code style changes.Martin Ritchie2007-04-181-2/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@530044 13f79535-47bb-0310-9956-ffa450edef68
* QPID-455 Prefetched messages can cause problems with client tools.Martin Ritchie2007-04-172-66/+101
| | | | | | | | | | | | | | | AMQSession - suspend channel at startup until start() and recieve/setMessageListener are called. BasicMessageConsumer - mainly style sheet changes MessageListenerMultiConsumerTest - removed one test case as we cannot ensure round-robin effect at start up .. added test case for only c2 consuming when c1 does nothing. MessageListenerTest - added new test that can demonstrate a further bug of message 'loss' when a receive is called only once before a message listener is set. Prefetched message end up on _SynchronousQueue regression of QPID-293 as of r501004. MessageRequeueTest - Was missing a conn.start() DurableSubscriptionTest - Removed blocking receives() so we don't block on failure CommitRollbackTest - Text message was wrong on testGetThenDisconnect tests so adjusted git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@529666 13f79535-47bb-0310-9956-ffa450edef68
* QPID-451 Throw InvalidDestinationException on attempt to publish to a Queue ↵Robert Godfrey2007-04-125-29/+61
| | | | | | | | | which does not exist Changed QueueSenderAdapter to check if the routing key is bound to a queue on the given exchange. The checking can be turned off by setting the system property org.apache.qpid.client.verifyQueueBindingBeforePublish to anything but true git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@527876 13f79535-47bb-0310-9956-ffa450edef68
* QPID-446 AMQUserManagementMBean Initial implementation of user management ↵Martin Ritchie2007-04-111-4/+3
| | | | | | | | | | | in authentication file. UserManagement - Added annotations for MBeanOperations PrincipalDatabase - Added new methods to update,create,delete Principal. - Implemented method on all PrincipalDatabase implementations, most return false to say not complete except Base64MD5PasswordFilePrincipalDatabase - which now stores in memory the password file and flushes any changes to disk. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@527487 13f79535-47bb-0310-9956-ffa450edef68
* Got rid of some uses of System.out instead of log4j logging.Robert Greig2007-04-091-36/+24
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@526803 13f79535-47bb-0310-9956-ffa450edef68
* Stopped throwing away exception causes.Robert Greig2007-04-0913-373/+472
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@526776 13f79535-47bb-0310-9956-ffa450edef68
* Purged logging from exception constructors.Robert Greig2007-04-094-28/+40
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@526714 13f79535-47bb-0310-9956-ffa450edef68
* QPID-443 : Fix to transactionality of message publishingRobert Godfrey2007-04-061-2/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@526154 13f79535-47bb-0310-9956-ffa450edef68
* QPID-308 removed closeConnection() that calls close(-1) and may result in a ↵Martin Ritchie2007-04-051-5/+0
| | | | | | client hang. better to call closeConnection(long timeout) so forced this my removing closeConnection(); git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@525787 13f79535-47bb-0310-9956-ffa450edef68
* QPID-414 : Addition of CRAM-MD5-HASHED authentication. Same as CRAM-MD5 but ↵Martin Ritchie2007-04-056-22/+190
| | | | | | | | | | | | | | | | | | | | | | | | | the client uses the hash of the password rather than the original password. This allows the broker to store the hash not the original password. Added initial tool for generation passwords. Broker: Renamed MD5PasswordFilePrincipalDatabase.java to Base64MD5PasswordFilePrincipalDatabase.java as that more accurately represents the file contents. PlainPasswordVhostFilePrincipalDatabase.java - import tidy up PrincipalDatabaseAuthenticationManager.java - Changed to add our SASL providers at the start of the SASL list. CRAMMD5Hashed* - New SASL mechanism that delegates to CRAM-MD5 but understands that the password to use is the hash of the users password. JCAProvider - Removed the addProvider() line as this is done after the construction in PrincipalDatabaseAuthenticationManager. PlainSaslServerFactory - White Space Passwd.java - New util stub for managing passwords ala htpasswd. Client Added CRAM-MD5-HASHED to CallbackHandlerRegistry Added ClientFactory for CRAMMD5Hashed that returns the first CRAM-MD5 SaslClient. DynamicSaslRegistrar.java - Tidied imports added new JCAProviders at the start of the Sasl lists. DynamicSaslRegistrar.properties - Added CRAM-MD5-HASHED handler. JCAProvider.java - as with broker stopped JCAProvider.java adding itself as the DynamicSaslRegistrar.java does this on the client. UsernameHashedPasswordCallbackHandler.java - New callback handler that is used by CRAM-MD5-HASHED. It hashes the client's password and uses that in the CRAM-MD5 algorithm. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@525777 13f79535-47bb-0310-9956-ffa450edef68
* Added default timeout to AMQConnection.close();Martin Ritchie2007-04-041-1/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@525487 13f79535-47bb-0310-9956-ffa450edef68
* Fix for setting the message idRajith Muditha Attapattu2007-03-292-4/+20
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@523747 13f79535-47bb-0310-9956-ffa450edef68
* Added additional logging and commentsMartin Ritchie2007-03-273-3/+14
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@522990 13f79535-47bb-0310-9956-ffa450edef68
* QPID-346,QPID-386,QPID-403, QPID-410 Rollback, Basic-Reject, QueueBrowser ↵Martin Ritchie2007-03-138-110/+241
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NO_ACK. QPID-346 Message loss after rollback\recover QPID-386 Updated Transactional Tests to cover underlying AMQP/Qpid state. QPID-403 Implement Basic.Reject QPID-410 Queue Browsers should use not acknowledge messages. ------------------------------------- Broker TxAck - Added comment and fixed white space UnacknowledgedMessage - Added comment for messageDecrement AMQChannel - Added extra debugging. + Created a NonTransactionalContext for requeuing messages as using txContext will tie the requeue to any runing transaction. + Updated message reference counting. So it is in terms of queues don't increment when giving to client. BasicCancelMethodHandler - Added Debug log. BasicConsumeMethodHandler - Reverted to directly writes frames to the session, throwing ChannelException caused problems. Added Trace and debug logging. BasicRejectMethodHandler, ChannelCloseHandler, ConnectionCloseMethodHandler - Added Debug logging AMQPFastProtocolHandler - moved error log to before session.write AMQMessage - Added additional debug via debugIdentity() and comments AMQQueue - Decoupled reference counting from dequeue operation. ConcurrentSelectorDeliveryManager - Added comments and increased info in debug logging SubscriptionImpl - Disabled use of acks for browsers. For now put setDeliveredToConsumer back in the finally block. commented that I'm not sure this is correct as even an error writing to client will cause msg to be marked delivered to consumer. + On Close ensured that it is only called once. + Had problem where closing browser was causing two CancelOk frames to be sent back to client. RequiredDeliveryException - Added comment to explain incrementReference LocalTransactionalContext - Commented out incrementReference as it shouldn't be required here. NonTransactionalContext - Removed incrementReference on deliver + - Fixed bug where browsers - acks would cause messages to be discarded. new JIRA this needs tidied up. TxnBuffer - Added debug logging. Client ------ AMQQueueBrowser - Added comments AMQSession - Added comments and debug + Updated to cause closed consumer to reject messages rather than receive them. + Prevented NoConsumer's from rollingback and rejecting.. they simply clear their SyncQueue - JIRA to ensure clean state with rollback BasicMessageConsumer - Added trace level debuging on close calls + Forced noConsume-rs to use NO_ACK + added more logging Closeable - Updated to use isClosed rather than directly calling _closed.get() to aid in future work on ensuring multi threaded close still allows pending acks to be processed first. ChannelCloseOkMethodHandler - updated comment AMQProtocolSession - Update comments,whitespace TransportConnection - removed static block FlowControllingBlockingQueue - Added isEmpty() Method PropertyValueTest - Added VM Broker setup + Updated test to run once and 50 times to pull out delivery tag problems that were occuring. + Adjusted logging level to be more helpful. moved some info down to trace and debug. MessageRequeueTest - Moved QpidClientConnection its own file. + Fixed it so it actually runs more than one consumer, concurrently.Now 3 was 1. ConcurrentLinkedMessageQueueAtomicSize - Implemented iterator(). Added QueueBrowserTest to system tests to test QueueBrowsering. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@517638 13f79535-47bb-0310-9956-ffa450edef68
* QPID-403 QPID-346 QPID-355 QPID-386 QPID-389 Updates to fix Transactional ↵Martin Ritchie2007-03-066-128/+247
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rollback. QPID-346 Message loss after rollback\recover QPID-355 Closing a consumer does not ensure messages delivery will stop for that subscription QPID-386 Updated Transactional Tests to cover underlying AMQP/Qpid state. QPID-389 Prefetched message are not correctly returned to the queue QPID-403 Implement Basic.Reject Broker UnacknowledgedMessage - Added toString for debug UnacknowledgedMessageMapImpl - Removed resendMessages method as all sending should go via DeliveryManager and Subscription. AMQChannel - Updated resend and requeue methods so they do not directly write messages to a subscriber. This was violating the suspension state. - Used a local non-transactional context to requeue messages as the internal requeuing of messages on the broker should not be part of any client transaction. - Maked messages as resent. - Removed warnings from IDE about missing JavaDoc text etc. BasicAckMethodHandler - Added debugging BasicRecoverMethodHandler - Removed session from the resend call. BasicRejectMethodHandler - Initial implementation. Hooks left for possible 'resend' bit. ChannelCloseHandler - Fixed bug where channel wasn't marked as fully closed on reception of a close from the client. TxRollbackHandler - Removed session from resend call. AMQMinaProtocolSession - Fixed bug where channel was marked as awaiting closure before it had actually been closed. This causes problems as the close looks up the channel by id again which will return null after it has been marked as awaiting closure. AMQMessage - Initial implementation of Rejection. Currently inactive in hasInterest() as we are miss-using reject to requeue prefetched messages from the client. AMQQueue - Removed debug method as it made reading the log very difficult as all the logs had the same line number ConcurrentSelectorDeliveryManager - Fixed clearAllMessages() as it didn't actually remove the messages. - Fixed bad logic in getNextMessage when using null subscriber. (as done by clearAllMessages) - Added more logging messages. Made more frequent logging a trace value. - Added debugIdentity() method to reduce over head in calculating standard log prefix. - Allowed messages to be added to the front of the queue. - Added currentStatus() to an overview of the queue's current state. SubscriptionImpl - Updated to handle closure correctly (QPID-355) -Updated the deliver method so it doesn't use a try->finally to do msg.setDeliveredToConsumer() as this would be done even in the event of an error. - Created an additional logger to log suspension calls rather than through the SI logger which logs a lot of detail. Client pom.xml - Excluded older version of log4j that commons-collections exposes. AMQSession - Added ability for dispatcher to start in stopped state. - Added dispatcher logger - Added checks around logging - Added message rejection if the dispatcher receives a message that it doesn't have a consumer for. - Updated message rejection to allow the dispatcher to perform the rejection if running this ensures that all queued messages are processed correctly and rejection occurs in order. - rollback() before calling rollback all pending queued messages must be rejected as rollback will clear unacked map which the rejects caused by rollback() will need. - fixed closedProducersAndConsumers so that it will rethrow any JMS Exception - recover() as for rollback() the rejects need to be done before the Recover Call to the broker. - Allowed delclareExchange to be done synchronously programatically - Updated confirmConsumerCancelled to use the dispatcher to perform the clean up. This required the creation of the dispatcher in stopped mode so that it does not start and message attempted to be delivered while the subscriber is being cancelled. BasicMessageConsumer - Updated close not to perform the deregistration. This is done in via BasicCancelOkMethodHandler - Added guards on logging - Record all messages that have been received so they can be rejected if rollback occurs. so had to change impl of acknowledgeLastDelivered. - Updated Rollback to initially reject all received messages that are still unAcked. - Added a recursive call should the queue not be empty at the end of the rollback.. with a warning. BasicCancelOkMethodHandler - White space changes to meet style guide. Added guard on logging. UnprocessedMessage - White space changes to meet style guide. StateWaiter - Added comment about timeout bug. FlowControllingBlockingQueue - Tidied imports RecoverTest - Updated as declareExchange is now Synchronous ChannelCloseTest - added guard on logging MessageRequeueTest - Added to better test underlying AMQP/Qpid state QPID-386 StreamMessageTest - Updated as declareExchange is now Synchronous CommitRollbackTest - added Additional test case to ensure prefetch queue is correctly purged. TransactedTest - Added logging and additional tests. Cluster SimpleClusterTest - updated in line with AMQSession.delcareExchange changes Common AMQConstant - Fixed error code 'not allowed' should be 530 not 507. ConcurrentLinkedMessageQueueAtomicSize - Updated to beable to get the size of messages on the 'head' queue along with additional debug Systests ReturnUnroutableMandatoryMessageTest - Updated as declareExchange is now Synchronous git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@515127 13f79535-47bb-0310-9956-ffa450edef68
* (Patch submitted by Rupert Smith) Qpid0394.diffRobert Greig2007-03-011-26/+43
| | | | | | Removes revision tags from source files. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@513360 13f79535-47bb-0310-9956-ffa450edef68
* QPID-391 : Broker Refactoring - initial tidy... add some mechanisms for ↵Robert Godfrey2007-02-255-48/+25
| | | | | | multi version git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@511389 13f79535-47bb-0310-9956-ffa450edef68
* QPID-346 Message loss after rollbackMartin Ritchie2007-02-234-81/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QPID-348 Problems of prefetching messages QPID-355 Closing a consumer does not ensure messages delivery will stop for that subscription BROKER AMQChannel - updated requeue to either resend via the Delivery Manager not directly via msg.writedeliver. BasicRejectMethodHandler - initial place holder. TxRollbackHandler - Added comment AMQMessage - added ability to record who has taken the message so that it can be resent to that subscriber on resend/requeue. AMQQueue - added the queue reference to the Subscription creation ConcurrentSelectorDeliveryManager - Added methods to correctly monitor the size of queue messages. Including messages on the resend queue of a Subscriber. Additional locking to ensure that messages are not sent to the subscriber after Closure. QPID-355 DeliveryManager - adjusted deliver call to allow delivery to the head of the queue. Subscription - changes to allow selction of queue(resend or predelivery) methods to add to resend and getSendLock to ensure that sending to the Subscription is allowed. SubscriptionFactory - changes to allow the AMQQueue to be passed to the Subscription. SubscriptionImpl - implementation of the interfaces. Local storage of messages to be resent and requeuing of the messages during closure. SubscriptionSet - changes to retrieve the actual stored Subscription when performing removeSubscriber. So we have access to the the resend queue. AMQStateManager - Added BasicRejectMethodHandler TransactionalContext - Added option to deliver the messages to the front of the queue. LocalTransactionalContext - cleared the _postComitDeliveryList on rollback. Added option to deliver the messages to the front of the queue. NonTransactionalContext - Added option to deliver the messages to the front of the queue. DeliverMessageOperation.java DELELTED AS NOT USED. CLIENT AMQSession - added ability to get the pervious state of the dispatcher when settting Stopped, fixed the channel suspension problems on broker so uncommented clean up code in rollback and recover. BasicMessageConsumer - updated the rollback so that it sends reject messages to server. AbstractJMSMessage - whitespace + added extra message properties to the toString() AMQProtocolHandler - whitespace + extra debug output TransactedTest - updated expect to prevent NPEs also added extra logging to help understand what is going on. CLUSTER ClusteredQueue - AMQQueue changes for message deliveryFirst. RemoteSubscriptionImpl - Implementation of Subscription SYSTESTS AbstractHeadersExchangeTestBase - AMQQueue changes for message deliveryFirst. AMQQueueMBeanTest - changes for message deliveryFirst. ConcurrencyTest - changes for message deliveryFirst. DeliveryManagerTest - changes for message deliveryFirst. SubscriptionTestHelper - Implementation of Subscription WhiteSpace only UnacknowledgedMessageMapImpl.java git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@510897 13f79535-47bb-0310-9956-ffa450edef68
* QPID-348 Reverted unecessary nowait addition to amqp Basic.Recover spec.Martin Ritchie2007-02-211-1/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@510076 13f79535-47bb-0310-9956-ffa450edef68
* QPID-348 Problems related to prefetching of messages Martin Ritchie2007-02-215-122/+368
| | | | | | | | | | | | | | | | | | Client caches are now cleared. Partially commented out code in AMQSession and BasicMessageConsumer pending broker fixes to ensure channel suspension is respected. Tests fail otherwise. Tests pass just now as they are not correct, JIRA raised for fix (QPID-386). Spec Changes Added recover-ok method to recover. But to maintain compatibility added a nowait bit to request the response. Java Changes AMQConnection added wrapping of AMQExceptions that can be thrown by the waiting suspend calls. AMQSession Added clean up code for rollback/recover to clean up Session._queue and BMC._syncQueue BasicMessageConsumer - added rollback method to clean up _syncQueue ChannelCloseMethodHandler - reduced logging level from error to debug for received methods. FlowControllingBlockingQueue - added code to return iterator so messages can be purged cleanly. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@510060 13f79535-47bb-0310-9956-ffa450edef68
* (Path submitted by Rupert Smith) Qpid-338. Custom SASL implementation for ↵Robert Greig2007-02-205-68/+245
| | | | | | Java 1.4 retrotranslation of the Java client. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@509642 13f79535-47bb-0310-9956-ffa450edef68
* QPID-325 : Persist durable exchange information in the storeRobert Godfrey2007-02-201-0/+35
| | | | | | QPID-318 : Remove hardcoding of version numbers (as applies to store) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@509628 13f79535-47bb-0310-9956-ffa450edef68
* Renamed AMQInvalidSelectorException to be AMQInvalidArgumentException to ↵Martin Ritchie2007-02-202-8/+9
| | | | | | better fit the generic use of the argument table in the AMQP Queue.Bind spec. Adjusted AMQConstant to match the proposal for additional codes AMQP-39,40,41 (https://wiki.108.redhat.com/jira/browse/AMQP-39). git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@509478 13f79535-47bb-0310-9956-ffa450edef68
* Fully propogated timeouts during AMQConnection.close. Still needs timeouts ↵Martin Ritchie2007-02-192-5/+11
| | | | | | to be reduced between the various session closures. QPID-380 git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@509216 13f79535-47bb-0310-9956-ffa450edef68
* QPID-379 Bounced Messages do not appear in connection exception listener. Martin Ritchie2007-02-192-45/+101
| | | | | | | | | | | | The previous commit that started the Dispatcher was wrong and caused a lot of failures. This will address that problem by providing a thread pool on the client connection object to deliver bounced messages to the exception handler. Tidied up MessageListenerTests so all the asserts are in the given test. Renamed TestChannelCloseMethodHandlerNoCloseOk as surefire picks it up as a test case. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@509202 13f79535-47bb-0310-9956-ffa450edef68
* QPID-372, QPID-376 Broker now ignores all frames for closing channels. Martin Ritchie2007-02-194-100/+117
| | | | | | | | | | | | | | | | | | | When a close-ok is received the channel can be reopened and used All uses of getChannel check the return type is not null and throw a NOT_FOUND AMQException. If the channel is not found during a method handler then the Channel will be closed. ChannelCloseHandler - Now throws a connection exception if trying to close a a non exisitant channel. AMQMinaProtocolSession - Added pre-check for closing channels to ignore all but Close-OK methods - Updated ChannelException method to close connection if the CE was a result of not having a valid channel. - Changed state to CLOSING when writing out a connection close frame. AMQConnection - Wrapped all _logging calls , Updated comment formatting AMQSession - called startDispatcherIfRequired when receiving a message as without it a producer will not get a returned message. This is because there is no consumer setup to consume. ConnectionCloseMethodHandler - Wrapped code in try finally so that the protocol session would always be closed correctly. AMQStateManager - Added state to the logging values Modified AMQTimeoutException to include a new constant value to identify the failure reason. AMQConstant - Added 408 REQUEST_TIMEOUT fixed error with NOT_ALLOWED value was 530 should be 507. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@509172 13f79535-47bb-0310-9956-ffa450edef68
* QPID-375 : remove assumptions on standard exchanges (amq.direct, amq.topic, ↵Robert Godfrey2007-02-1612-100/+305
| | | | | | etc), allow other exchanges to be created through virtualhosts.xml git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@508649 13f79535-47bb-0310-9956-ffa450edef68