Skip to content
Commits on Jan 8, 2016
Commits on Jan 7, 2016
  1. @artembilan

    AMQP-560: Idle Container Events

    committed with artembilan
    JIRA: https://jira.spring.io/browse/AMQP-560
    
    Polishing and Docs
    
    Polishing
    
    Use `@EventListener`.
Commits on Jan 5, 2016
Commits on Dec 29, 2015
  1. @artembilan
Commits on Dec 28, 2015
  1. @artembilan

    AMQP-558: amqp-client 3.6.0

    committed with artembilan
    JIRA: https://jira.spring.io/browse/AMQP-558
    
    Minimum supported amqp-client is now 3.4.0.
Commits on Dec 24, 2015
Commits on Dec 23, 2015
  1. spring-schemas

    committed
  2. Master is Now 1.6.x

    committed
Commits on Dec 18, 2015
  1. AMQP-556: NPE in SMLC After Shutdown Timeout

    committed
    JIRA: https://jira.spring.io/browse/AMQP-556
    
    If a listener doesn't shut down within the timeout, when it
    next checks whether it is active, it gets an NPE.
    
    Since it is a terminating listener, it is benign.
Commits on Dec 12, 2015
  1. @artembilan

    AMQP-555: AnonymousQueue Naming Strategy

    committed with artembilan
    JIRA: https://jira.spring.io/browse/AMQP-555
    
    Allow the user to control the format of `AnonymousQueue` names.
    
    Simple polishing
Commits on Dec 11, 2015
  1. @artembilan

    Fix some race conditions around mocks

    artembilan committed
    The symptom looks like:
    ```
    2015-12-11 05:13:01,513 ERROR SimpleAsyncTaskExecutor-1 [org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer] - <Consumer thread error, thread abort.>
    java.lang.AssertionError
    	at org.mockito.internal.stubbing.InvocationContainerImpl.setMethodForStubbing(InvocationContainerImpl.java:108)
    	at org.mockito.internal.handler.MockHandlerImpl.handle(MockHandlerImpl.java:54)
    	at org.mockito.internal.handler.NullResultGuardian.handle(NullResultGuardian.java:29)
    	at org.mockito.internal.handler.InvocationNotifierHandler.handle(InvocationNotifierHandler.java:38)
    	at org.mockito.internal.creation.cglib.MethodInterceptorFilter.intercept(MethodInterceptorFilter.java:59)
    	at org.apache.commons.logging.impl.Log4JLogger$$EnhancerByMockitoWithCGLIB$$8fedbd5a.trace(<generated>)
    	at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.doReceiveAndExecute(SimpleMessageListenerContainer.java:1090)
    	at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.receiveAndExecute(SimpleMessageListenerContainer.java:1080)
    	at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.access$1100(SimpleMessageListenerContainer.java:93)
    	at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:1197)
    	at java.lang.Thread.run(Thread.java:745)
    ```
    
    And the guilty code is:
    
    ```
    Log logger = spy(TestUtils.getPropertyValue(container, "logger", Log.class));
    new DirectFieldAccessor(container).setPropertyValue("logger", logger);
    doReturn(true).when(logger).isWarnEnabled();
    ```
    Where the target object may use this `spy` just after `setPropertyValue()` and during the next `doReturn()`.
    Therefore Mockito might not initialize the spy properly.
    
    Fix moving the `setPropertyValue()` only after the full spy definition.
Commits on Dec 5, 2015
  1. Code Polishing (Sonar)

    committed
    - remove redundant modifiers
    - overridable methods called from ctors
Commits on Dec 3, 2015
  1. AMQP-553: Allow CF ThreadFactory Injection

    Dmitry Brazhnikov committed with
    JIRA: https://jira.spring.io/browse/AMQP-553
    
    Allow setting ThreadFactory to rabbit internal ConnectionFactory wrapped in AbstractConnectionFactory
  2. AMQP-551: Use doReturn() for Spied Loggers

    committed
    It's not clear why `when()` usage here would cause a problem, and
    particularly with other mocks, but it's generally better to use
    `doReturn.(mock)... `rather than when(mock...).thenReturn(...`.
Commits on Dec 1, 2015
  1. @Chumper

    AMQP-552: Support @RabbitListener on Interfaces

    Chumper committed with
    Update RabbitListenerAnnotationBeanPostProcessor.java
    
    Added possibility to use interfaces for @RabbitListener declarations
    
    Added test cases to support the change
    
    Polishing; add class-level test.
  2. Test Polishing

    committed
  3. @EnableRabbitIntegrationTests Improvements

    committed
    Demo ClassMapper in @RabbitListener
    
    Add example of how to use a custom ClassMapper with JSON.
    
    Also, use a `TestExecutionListener` to defer queue deletion until after the
    context has been stopped; avoids shutdown delays and noise in logs.
Commits on Nov 30, 2015
  1. AMQP-551: Fix Mockito Usage in Failover Tests

    committed
    JIRA: https://jira.spring.io/browse/AMQP-551
    
    Perform all mock creation/interaction on the main thread.
Commits on Nov 22, 2015
  1. Fix Doc Typos

    committed
Commits on Nov 19, 2015
  1. Doc Fix and Polishing

    committed
Commits on Nov 18, 2015
  1. @artembilan

    AMQP-546: Add SmartLifecycle to Caching Conn Fact

    committed with artembilan
    JIRA: https://jira.spring.io/browse/AMQP-546
    
    Code was added to prevent connectoon use after the context is closed. However,
    this was too early in the lifecycle because other beans might not have been
    stopped yet; they could no longer use the connection.
    
    Add `SmartLifecyle` to `CachingConnectionFactory` and put it in a late phase,
    by default, so that beans in earlier phases can still use the connection in
    `stop()`.
    
    Add test case to reproduce the problem.
    
    Polishing: PR Comments
Commits on Nov 13, 2015
  1. @spring-buildmaster
  2. @spring-buildmaster
  3. Update Spring and RabbitMQ Client Versions

    committed
    Also increase some test timeouts.
  4. @artembilan

    AMQP-479: XA compatibility for RabbitResourceSync

    artembilan committed with
    JIRA: https://jira.spring.io/browse/AMQP-479
    
    Note, there is no test-cases on the matter (yet): we need extra dependencies for XA Transaction Manager.
    
    Add tests
    
    Fix `ConnectionFactoryUtils.releaseResource()` logic
    
    Fix `RabbitTemplateIntegrationTests` to clean the `ThreadLocal` variable
Commits on Nov 10, 2015
  1. @artembilan
Commits on Nov 2, 2015
  1. @artembilan

    AMQP-544: API to Obtain @RabbitListener ids

    committed with artembilan
    JIRA: https://jira.spring.io/browse/AMQP-544
    
    Also fix a test that used a queue named `foo`. It failed
    if the queue existed and had incompatible messages.
    
    Polishing
  2. @artembilan

    @RabbitListener Doc Improvement

    committed with artembilan
    Also implement `toString()` on the listener container.
    
    Polishing.
Commits on Oct 19, 2015
  1. @artembilan

    Fix x-expires Test Case

    committed with artembilan
    Due to the small `x-expires`, it's possible for both consumers to
    redeclare the queue; the test only expects one to do so.
    
    Also, change the queue to have a random name to avoid collisions with other builds.
    
    Also, noticed an NPE occasionally when running the test (null `BackOffExecution`).
    
    Polishing
    
    Fix the test instead of avoiding the NPE which can't happen in real code.
  2. @artembilan

    AMQP-542: @SendTo with Class Level @RabbitListener

    committed with artembilan
    JIRA: https://jira.spring.io/browse/AMQP-542
    
    Spurious NPE logged in `AnnotationUtils` when using class-level annotation.
    
    Detect a null `method` and add support for `@SendTo` on `@RabbitHandler`.
    
    Class-level `@SendTo` is not supported due to annotation restrictions.
    See SPR-13578.
    
    Polishing
    
    - Protect for null DelegatingInvocableHandler
    - Only set up thread local after successful invocation
    - Get rid of `bean` property in the `MultiMethodRabbitListenerEndpoint`
    in favor of setter and getter on the superclass
Commits on Oct 9, 2015
  1. AMQP-540: Fix @RabbitHandler on Proxy

    committed
    JIRA: https://jira.spring.io/browse/AMQP-540
    
    Previously, class-level `@RabbitListener` was not detected if the class was proxied.
    
    This solves the reported problem but it is incomplete - see AMQP-541.
Commits on Oct 2, 2015
  1. @spring-buildmaster
  2. @spring-buildmaster
Something went wrong with that request. Please try again.