Class CloudEventMessageBuilder<T>
- java.lang.Object
-
- org.springframework.cloud.function.cloudevent.CloudEventMessageBuilder<T>
-
public final class CloudEventMessageBuilder<T> extends Object
Message builder which is aware of Cloud Event semantics. It provides type-safe setters for v1.0 Cloud Event attributes while supporting all other versions via convenientsetHeader(String, Object)
method.- Since:
- 3.1
- Author:
- Oleg Zhurakousky
-
-
Field Summary
Fields Modifier and Type Field Description protected org.apache.commons.logging.Log
logger
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description org.springframework.messaging.Message<T>
build()
Will build the message ensuring that the Cloud Event attributes are all prefixed with the prefix determined by the framework.org.springframework.messaging.Message<T>
build(String attributePrefixToUse)
Will build the message ensuring that the Cloud Event attributes are prefixed with the 'attributePrefixToUse'.CloudEventMessageBuilder<T>
copyHeaders(Map<String,Object> headers)
static <T> CloudEventMessageBuilder<T>
fromMessage(org.springframework.messaging.Message<T> message)
CloudEventMessageBuilder<T>
setDataContentType(String dataContentType)
CloudEventMessageBuilder<T>
setDataSchema(String dataSchema)
CloudEventMessageBuilder<T>
setDataSchema(URI dataSchema)
CloudEventMessageBuilder<T>
setHeader(String key, Object value)
CloudEventMessageBuilder<T>
setId(String id)
CloudEventMessageBuilder<T>
setSource(String uri)
CloudEventMessageBuilder<T>
setSource(URI uri)
CloudEventMessageBuilder<T>
setSpecVersion(String specversion)
CloudEventMessageBuilder<T>
setSubject(String subject)
CloudEventMessageBuilder<T>
setTime(String time)
CloudEventMessageBuilder<T>
setTime(OffsetDateTime time)
CloudEventMessageBuilder<T>
setType(String type)
Map<String,Object>
toHeadersMap()
Returns a snapshot of the headersMap
at the time this method is called.static <T> CloudEventMessageBuilder<T>
withData(T data)
-
-
-
Method Detail
-
withData
public static <T> CloudEventMessageBuilder<T> withData(T data)
-
fromMessage
public static <T> CloudEventMessageBuilder<T> fromMessage(org.springframework.messaging.Message<T> message)
-
setId
public CloudEventMessageBuilder<T> setId(String id)
-
setSource
public CloudEventMessageBuilder<T> setSource(URI uri)
-
setSource
public CloudEventMessageBuilder<T> setSource(String uri)
-
setSpecVersion
public CloudEventMessageBuilder<T> setSpecVersion(String specversion)
-
setType
public CloudEventMessageBuilder<T> setType(String type)
-
setDataContentType
public CloudEventMessageBuilder<T> setDataContentType(String dataContentType)
-
setDataSchema
public CloudEventMessageBuilder<T> setDataSchema(URI dataSchema)
-
setDataSchema
public CloudEventMessageBuilder<T> setDataSchema(String dataSchema)
-
setSubject
public CloudEventMessageBuilder<T> setSubject(String subject)
-
setTime
public CloudEventMessageBuilder<T> setTime(OffsetDateTime time)
-
setTime
public CloudEventMessageBuilder<T> setTime(String time)
-
setHeader
public CloudEventMessageBuilder<T> setHeader(String key, Object value)
-
copyHeaders
public CloudEventMessageBuilder<T> copyHeaders(Map<String,Object> headers)
-
toHeadersMap
public Map<String,Object> toHeadersMap()
Returns a snapshot of the headersMap
at the time this method is called. The returned Map is read-only.- Returns:
- map of headers
-
build
public org.springframework.messaging.Message<T> build()
Will build the message ensuring that the Cloud Event attributes are all prefixed with the prefix determined by the framework. If you want to use a specific prefix please usebuild(String)
method.- Returns:
- instance of
Message
-
-