1. 13 10月, 2013 1 次提交
    • R
      Add support for resolving message headers · 8ae88c20
      Rossen Stoyanchev 提交于
      This change adds support for @Header and @Headers annotated method
      arguments to spring-messaging. Also supported are arguments of type
      MessageHeaders, and MessageHeaderAccessor (including sub-types of
      MessageHeaderAccessort as long as they provide a wrap(Message<?>)
      static factory method).
      
      This change also renames @MessageBody to @Payload.
      
      Issue: SPR-10985
      8ae88c20
  2. 12 10月, 2013 5 次提交
  3. 11 10月, 2013 3 次提交
    • R
      Add support for MIME-based message conversion · 7d3b6497
      Rossen Stoyanchev 提交于
      The MessageConverter interface in spring-messaging is now explicitly
      designed to support conversion of the payload of a Message<?> to and
      from serialized form based on MIME type message header.
      By default, the MessageHeaders.CONTENT_HEADER header is used but a
      custom ContentTypeResolver can be configured to customize that.
      
      Currently available are Jackson 2, String, and byte array converters.
      A CompositeMessageConverter can be used to configure several
      message converters in various places such as a messaging template.
      7d3b6497
    • P
      Clarify ResolvableType.resolve() Java Doc · ee8f1aa6
      Phillip Webb 提交于
      Issue: SPR-10973
      ee8f1aa6
    • P
      Fix ResolvableType isAssignableFrom for <?> · 5358cc0f
      Phillip Webb 提交于
      Fix ResolvableType.isAssignableFrom to correctly deal with <?> style
      generics.
      
      Issue: SPR-10973
      5358cc0f
  4. 10 10月, 2013 4 次提交
    • P
      Refactor from deprecated GenericTypeResolver calls · 501a1cbb
      Phillip Webb 提交于
      Refactor AbstractMessageConverterMethodArgumentResolver and
      BridgeMethodResolver to use ResolvableType in preference to deprecated
      GenericTypeResolver calls.
      
      Issue: SPR-10980
      501a1cbb
    • P
      Use ResolvableType in GenericCollectnTypeResolver · fdf0ef40
      Phillip Webb 提交于
      Refactor GenericCollectionTypeResolver to make use of ResolvableType
      for generic resolution.
      
      Issue: SPR-10977
      fdf0ef40
    • P
      Use ResolvableType in GenericTypeResolver · 595efe9a
      Phillip Webb 提交于
      Refactor GenericTypeResolver to make use of ResolvableType
      for generic resolution.
      
      Issue: SPR-10978
      595efe9a
    • P
      Introduce ResolvableType Class · 6a18b004
      Phillip Webb 提交于
      Add a new ResolvableType Class which encapsulates java.lang.reflect.Type,
      providing access to supertypes, interfaces and generic parameters along
      with the ability to ultimately resolve to a java.lang.Class.
      
      ResolvableTypes may be obtained from fields, method parameters, method
      returns, classes or directly from a java.lang.reflect.Type. Most methods
      will themselves return ResolvableTypes, allowing easy navigation.
      
      For example:
      
      	private HashMap<Integer, List<String>> myMap;
      
      	public void example() {
       		ResolvableType t = ResolvableType.forField(
       					getClass().getDeclaredField("myMap"));
       		t.getSuperType(); // AbstractMap<Integer, List<String>>;
       		t.asMap(); // Map<Integer, List<String>>
       		t.getGeneric(0).resolve(); // Integer
       		t.getGeneric(1).resolve(); // List
       		t.getGeneric(1); // List<String>
       		t.resolveGeneric(1, 0); // String
       	}
      
      Issue: SPR-10973
      6a18b004
  5. 09 10月, 2013 2 次提交
  6. 08 10月, 2013 8 次提交
  7. 07 10月, 2013 1 次提交
  8. 05 10月, 2013 4 次提交
    • J
      Comprehensive update to the framework's TimeZone handling, including a new... · 4574528a
      Juergen Hoeller 提交于
      Comprehensive update to the framework's TimeZone handling, including a new TimeZoneAwareLocaleContext and a LocaleContextResolver for Spring MVC
      
      A few noteworthy minor changes: LocaleContext.getLocale() may return null in special cases (not by default), which our own accessing classes are able to handle now. If there is a non-null TimeZone user setting, we're exposing it to all collaborating libraries, in particular to JSTL, Velocity and JasperReports. Our JSR-310 and Joda-Time support falls back to checking the general LocaleContext TimeZone now, adapting it to their time zone types, if no more specific setting has been provided. Our DefaultConversionService has TimeZone<->ZoneId converters registered. And finally, we're using a custom parseTimeZoneString method now that doesn't accept the TimeZone.getTimeZone(String) GMT fallback for an invalid time zone id anymore.
      
      Issue: SPR-1528
      4574528a
    • J
      Polishing · 52cca48f
      Juergen Hoeller 提交于
      52cca48f
    • J
      Marked Jackson 1.x support classes as deprecated · 8b3afda6
      Juergen Hoeller 提交于
      8b3afda6
    • J
      bd4c64af
  9. 03 10月, 2013 7 次提交
    • J
      Introduced TomcatLoadTimeWeaver for Tomcat's new InstrumentableClassLoader interface · 3fad0fa4
      Juergen Hoeller 提交于
      At the same time, dropped GlassFish 1/2 support from GlassFishLoadTimeWeaver and redesigned it to be as analogous to TomcatLoadTimeWeaver as possible.
      
      Issue: SPR-10788
      3fad0fa4
    • J
      Polishing · 888e3c7e
      Juergen Hoeller 提交于
      888e3c7e
    • R
      Make method in RequestMappingHandlerMapping protected · 52d663e5
      Rossen Stoyanchev 提交于
      Issue: SPR-10950
      52d663e5
    • B
      Add Jackson's Modules registration in Jackson2OMFactoryBean · a5e39167
      Brian Clozel 提交于
      Prior to this commit, one couldn't configure Jackson's ObjectMapper
      with (De)SerializerModifiers or advanced configuration features
      using XML configuration.
      
      This commit updates the FactoryBean and adds a setModule method
      that will register Modules with the ObjectMapper.
      
      Note that this commit is only about XML configuration, since
      this feature was already available with JavaConfig.
      
      Issue: SPR-10429
      a5e39167
    • B
      Add javax.servlet.http.Part support for data binding · e91ce23c
      Brian Clozel 提交于
      Prior to this commit, Multipart databinding would only support
      MultiPartFile databinding using commons-multipart.
      
      Now the WebRequestDataBinder supports Part and List<Part>
      databinding for Servlet 3.0 compliant containers.
      
      Issue: SPR-10591
      e91ce23c
    • A
      Introduce new HEARTBEAT message type · 41e411a8
      Andy Wilkinson 提交于
      Previously, there was no generic concept of a message that represents
      a heartbeat and the STOMP-specific code used a null STOMP command to
      represent a heartbeat.
      
      This commit introduces HEARTBEAT as a new SimpMessageType. The STOMP
      support has been updated to create HEARTBEAT messages to represent
      heartbeats, and to use the new message type as the mechanism by which
      heartbeats are identified.
      41e411a8
    • A
      Make the broker relay heartbeat intervals configurable · a7f735b5
      Andy Wilkinson 提交于
      Prior to this commit, the intervals at which the broker relay's system
      session would send heartbeats to the STOMP broker and expect to
      receive heartbeats from the STOMP broker were hard-coded at 10
      seconds.
      
      This commit makes the intervals configurable, with 10 seconds being
      the default value.
      a7f735b5
  10. 02 10月, 2013 3 次提交
    • A
      Improve broker relay's shutdown and availability events · ba11af7f
      Andy Wilkinson 提交于
      Previously, when the broker relay was shut down, the TCP client was
      closed and the relay sessions were left to find out about the
      shutdown as a result of their TCP connections being closed. This led
      to problems where an attempt could be made to use a session that was,
      in fact, in the process of being shut down.
      
      This commit updates the broker relay to explicitly close each of its
      relay sessions as part of its stop processing.
      As part of the broker relay being shut down explicitly close each of
      its relay sessions. It does so before closing the TCP client so that
      the relay sessions know that they are  disconnected before their TCP
      connections are closed.
      
      The broker relay's publishing of availability events has also been
      improved. Prior to this commit, availability events were published
      based on the availability of any relay session. For example, this
      meant that a successfully established client relay session would
      result in an event being published indicating that the broker's
      available even if the system relay session was yet to be established.
      This commit updates the relay so that broker availability events are
      only published by the system relay session. This allows application
      code the use these events as an accurate indication of the
      availability of the broker. Clients that are interested in the
      broker's availability can find out through the use of heart beats or
      through the receipt of an ERROR frame in response to an attempt to
      communnicate with the broker.
      ba11af7f
    • R
      Fix failing test · c01f45fa
      Rossen Stoyanchev 提交于
      c01f45fa
    • R
      f8e1f06d
  11. 01 10月, 2013 2 次提交