1. 03 12月, 2013 9 次提交
  2. 02 12月, 2013 8 次提交
  3. 27 11月, 2013 9 次提交
    • P
      Detect cache hit with multiple @Cachables · b0b40dad
      Phillip Webb 提交于
      Fix CacheAspectSupport to consider a cache hit from any of the multiple
      @Cachables that may have been specified using the @Caching annotation.
      
      Prior to this commit the following scenario would never produce a hit:
      
      	@Caching(cacheable = {
      		@Cacheable(value = "c1", unless = "#result.size() < 4"),
      		@Cacheable(value = "c2", unless = "#result.size() > 3")
      	})
      
      Issue: SPR-11124
      b0b40dad
    • P
      Consistent whitespace after imports · 043a41e3
      Phillip Webb 提交于
      Update code to have a consistent number of new-line characters after
      import statements.
      043a41e3
    • P
      General polish of new 4.0 classes · 15698860
      Phillip Webb 提交于
      Apply consistent styling to new classes introduced in Spring 4.0.
      
      - Javadoc line wrapping, whitespace and formatting
      - General code whitespace
      - Consistent Assert.notNull messages
      15698860
    • R
      Add ability to customize message channels · 690051f4
      Rossen Stoyanchev 提交于
      @EnableWebSocketMessageBroker message channel configuration can now be
      customized via WebSocketMessageBrokerConfigurer. It is necessary to
      make this easy and even required as part of the basic configuration
      since by default the message channels are backed by a thread pool of
      size 1, not suitable for production use.
      
      Issue: SPR-11023
      690051f4
    • R
      Fix synchronization issue in StompSubProtocolHandler · e764c8d8
      Rossen Stoyanchev 提交于
      Two concurrent threads should not send a message on a single WebSocket
      session at the same time, for example see:
      http://docs.oracle.com/javaee/7/api/javax/websocket/RemoteEndpoint.Basic.html
      
      In StompSubProtocolHandler it is quite possible that multiple messages
      may be broadcast to a single WebSocket client concurrently.
      
      This change adds synchronization around the sending of a message to a
      specific cilent session.
      
      Issue: SPR-11023
      e764c8d8
    • P
      Fix various javadoc warnings · a31ac882
      Phillip Webb 提交于
      a31ac882
    • S
      Merge pull request #421 from sbrannen/SPR-11038 · c7c395d0
      Sam Brannen 提交于
      * SPR-11038:
        Support meta-annotation attr overrides in the TCF
      c7c395d0
    • S
      Support meta-annotation attr overrides in the TCF · 64f593db
      Sam Brannen 提交于
      Prior to this commit, the Spring TestContext Framework (TCF) supported
      the use of test-related annotations as meta-annotations for composing
      custom test stereotype annotations; however, attributes in custom
      stereotypes could not be used to override meta-annotation attributes.
      
      This commit addresses this by allowing attributes from the following
      annotations (when used as meta-annotations) to be overridden in custom
      stereotypes.
      
      - @ContextConfiguration
      - @ActiveProfiles
      - @DirtiesContext
      - @TransactionConfiguration
      - @Timed
      - @TestExecutionListeners
      
      This support depends on functionality provided by
      AnnotatedElementUtils. See the 'Notes' below for further details and
      ramifications.
      
      Notes:
      
      - AnnotatedElementUtils does not support overrides for the 'value'
        attribute of an annotation. It is therefore not possible or not
        feasible to support meta-annotation attribute overrides for some
        test-related annotations.
      - @ContextHierarchy, @WebAppConfiguration, @Rollback, @Repeat, and
        @ProfileValueSourceConfiguration define single 'value' attributes
        which cannot be overridden via Spring's meta-annotation attribute
        support.
      - Although @IfProfileValue has 'values' and 'name' attributes, the
        typical usage scenario involves the 'value' attribute which is not
        supported for meta-annotation attribute overrides. Furthermore,
        'name' and 'values' are so generic that it is deemed unfeasible to
        provide meta-annotation attribute override support for these.
      - @BeforeTransaction and @AfterTransaction do not define any attributes
        that can be overridden.
      - Support for meta-annotation attribute overrides for @Transactional is
        provided indirectly via SpringTransactionAnnotationParser.
      
      Implementation Details:
      
      - MetaAnnotationUtils.AnnotationDescriptor now provides access to the
        AnnotationAttributes for the described annotation.
      - MetaAnnotationUtils.AnnotationDescriptor now provides access to the
        root declaring class as well as the declaring class.
      - ContextLoaderUtils now retrieves AnnotationAttributes from
        AnnotationDescriptor to look up annotation attributes for
        @ContextConfiguration and @ActiveProfiles.
      - ContextConfigurationAttributes now provides a constructor to have its
        attributes sourced from an instance of AnnotationAttributes.
      - ContextLoaderUtils.resolveContextHierarchyAttributes() now throws an
        IllegalStateException if no class in the class hierarchy declares
        @ContextHierarchy.
      - TransactionalTestExecutionListener now uses AnnotatedElementUtils to
        look up annotation attributes for @TransactionConfiguration.
      - Implemented missing unit tests for @Rollback resolution in
        TransactionalTestExecutionListener.
      - SpringJUnit4ClassRunner now uses AnnotatedElementUtils to look up
        annotation attributes for @Timed.
      - TestContextManager now retrieves AnnotationAttributes from
        AnnotationDescriptor to look up annotation attributes for
        @TestExecutionListeners.
      - DirtiesContextTestExecutionListener now uses AnnotatedElementUtils to
        look up annotation attributes for @DirtiesContext.
      
      Issue: SPR-11038
      64f593db
    • P
      Remove unused GlassFishLoadTimeWeaverTests · c5779e2e
      Phillip Webb 提交于
      Delete the unused GlassFishLoadTimeWeaverTests and in the process
      fix the "Unable to load JUnit4 runner to calculate Ignored test cases"
      Gradle error.
      
      Issue: SPR-10563
      c5779e2e
  4. 26 11月, 2013 11 次提交
  5. 24 11月, 2013 1 次提交
    • R
      Consolidate websocket/messaging code · 4de3291d
      Rossen Stoyanchev 提交于
      Before this change spring-messaging contained a few WebSocket-related
      classes including WebSocket sub-protocol support for STOMP as well
      as @EnableWebSocketMessageBroker and related configuration classes.
      
      After this change those classes are located in the spring-websocket
      module under org.springframework.web.socket.messaging.
      
      This means the following classes in application configuration must
      have their packages updated:
      
      org.springframework.web.socket.messaging.config.EnableWebSocketMessageBroker
      org.springframework.web.socket.messaging.config.StompEndpointRegistry
      org.springframework.web.socket.messaging.config.WebSocketMessageBrokerConfigurer
      
      MessageBrokerConfigurer has been renamed to MessageBrokerRegistry and
      is also located in the above package.
      4de3291d
  6. 23 11月, 2013 2 次提交