Spring Cloud 標(biāo)頭映射

2024-01-10 15:59 更新

這些通道適配器包含標(biāo)頭映射器,可讓您將標(biāo)頭從Spring映射或過濾出到Google Cloud Pub / Sub消息,反之亦然。默認(rèn)情況下,入站通道適配器將Google Cloud Pub / Sub消息上的每個(gè)標(biāo)頭映射到適配器產(chǎn)生的Spring消息。出站通道適配器將Spring消息中的每個(gè)標(biāo)頭映射到Google Cloud Pub / Sub消息中,由Spring添加的消息標(biāo)頭除外,例如帶有鍵"id","timestamp""gcp_pubsub_acknowledgement"的標(biāo)頭。 在此過程中,出站映射器還將標(biāo)頭的值轉(zhuǎn)換為字符串。

每個(gè)適配器都聲明一個(gè)setHeaderMapper()方法,可讓您進(jìn)一步自定義要從Spring映射到Google Cloud Pub / Sub的標(biāo)題,反之亦然。

例如,要過濾出頭文件"foo","bar"和所有以前綴“ prefix_”開頭的頭文件,可以將setHeaderMapper()與此模塊提供的PubSubHeaderMapper實(shí)現(xiàn)一起使用。

PubSubMessageHandler adapter = ...
...
PubSubHeaderMapper headerMapper = new PubSubHeaderMapper();
headerMapper.setOutboundHeaderPatterns("!foo", "!bar", "!prefix_*", "*");
adapter.setHeaderMapper(headerMapper);
PubSubHeaderMapper.setOutboundHeaderPatterns()PubSubHeaderMapper.setInboundHeaderPatterns()中聲明模式的順序很重要。第一種模式優(yōu)先于以下模式。

在前面的示例中,"*"模式表示每個(gè)標(biāo)頭都已映射。但是,由于它在列表中排在最后,因此之前的模式優(yōu)先


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)