下面列出了怎么用org.springframework.web.socket.handler.WebSocketHandlerDecoratorFactory的API类实例代码及写法,或者点击链接到github查看源代码。
@Override
public WebSocketHandler getObject() {
WebSocketHandler result = this.handler;
for (WebSocketHandlerDecoratorFactory factory : this.factories) {
result = factory.decorate(result);
}
return result;
}
@Override
protected void configureWebSocketTransport(WebSocketTransportRegistration registry) {
registry.addDecoratorFactory(new WebSocketHandlerDecoratorFactory() {
@Override
public WebSocketHandlerDecorator decorate(WebSocketHandler handler) {
return new WebSocketHandlerDecorator(handler) {
@Override
public void afterConnectionEstablished(WebSocketSession session) throws Exception {
session.getAttributes().put("decorated", true);
super.afterConnectionEstablished(session);
}
};
}
});
}
@Override
public WebSocketHandler getObject() {
WebSocketHandler result = this.handler;
for (WebSocketHandlerDecoratorFactory factory : this.factories) {
result = factory.decorate(result);
}
return result;
}
@Override
protected void configureWebSocketTransport(WebSocketTransportRegistration registry) {
registry.addDecoratorFactory(new WebSocketHandlerDecoratorFactory() {
@Override
public WebSocketHandlerDecorator decorate(WebSocketHandler handler) {
return new WebSocketHandlerDecorator(handler) {
@Override
public void afterConnectionEstablished(WebSocketSession session) throws Exception {
session.getAttributes().put("decorated", true);
super.afterConnectionEstablished(session);
}
};
}
});
}
@Override
public void configureWebSocketTransport(WebSocketTransportRegistration registration) {
registration.addDecoratorFactory(new WebSocketHandlerDecoratorFactory() {
@Override
public WebSocketHandler decorate(WebSocketHandler handler) {
ProxyWebSocketHandler proxyWebSocketHandler = new ProxyWebSocketHandler(
handler, stompClient, webSocketHttpHeadersCallback,
messagingTemplate,
proxyTargetResolver,
zuulWebSocketProperties);
proxyWebSocketHandler.errorHandler(proxyWebSocketErrorHandler);
return proxyWebSocketHandler;
}
});
}
@Override
public WebSocketHandler getObject() throws Exception {
WebSocketHandler result = this.handler;
for (WebSocketHandlerDecoratorFactory factory : this.factories) {
result = factory.decorate(result);
}
return result;
}
@Override
protected void configureWebSocketTransport(WebSocketTransportRegistration registry) {
registry.addDecoratorFactory(new WebSocketHandlerDecoratorFactory() {
@Override
public WebSocketHandlerDecorator decorate(WebSocketHandler handler) {
return new WebSocketHandlerDecorator(handler) {
@Override
public void afterConnectionEstablished(WebSocketSession session) throws Exception {
session.getAttributes().put("decorated", true);
super.afterConnectionEstablished(session);
}
};
}
});
}
protected List<WebSocketHandlerDecoratorFactory> getDecoratorFactories() {
return this.decoratorFactories;
}
protected WebSocketHandler decorateWebSocketHandler(WebSocketHandler handler) {
for (WebSocketHandlerDecoratorFactory factory : getTransportRegistration().getDecoratorFactories()) {
handler = factory.decorate(handler);
}
return handler;
}
@SuppressWarnings("unused")
public DecoratingFactoryBean(WebSocketHandler handler, List<WebSocketHandlerDecoratorFactory> factories) {
this.handler = handler;
this.factories = factories;
}
protected List<WebSocketHandlerDecoratorFactory> getDecoratorFactories() {
return this.decoratorFactories;
}
protected WebSocketHandler decorateWebSocketHandler(WebSocketHandler handler) {
for (WebSocketHandlerDecoratorFactory factory : getTransportRegistration().getDecoratorFactories()) {
handler = factory.decorate(handler);
}
return handler;
}
@SuppressWarnings("unused")
public DecoratingFactoryBean(WebSocketHandler handler, List<WebSocketHandlerDecoratorFactory> factories) {
this.handler = handler;
this.factories = factories;
}
protected List<WebSocketHandlerDecoratorFactory> getDecoratorFactories() {
return this.decoratorFactories;
}
protected WebSocketHandler decorateWebSocketHandler(WebSocketHandler handler) {
for (WebSocketHandlerDecoratorFactory factory : getTransportRegistration().getDecoratorFactories()) {
handler = factory.decorate(handler);
}
return handler;
}
@SuppressWarnings("unused")
private DecoratingFactoryBean(WebSocketHandler handler, List<WebSocketHandlerDecoratorFactory> factories) {
this.handler = handler;
this.factories = factories;
}
/**
* Configure one or more factories to decorate the handler used to process
* WebSocket messages. This may be useful in some advanced use cases, for
* example to allow Spring Security to forcibly close the WebSocket session
* when the corresponding HTTP session expires.
* @since 4.1.2
*/
public WebSocketTransportRegistration setDecoratorFactories(WebSocketHandlerDecoratorFactory... factories) {
if (factories != null) {
this.decoratorFactories.addAll(Arrays.asList(factories));
}
return this;
}
/**
* Configure one or more factories to decorate the handler used to process
* WebSocket messages. This may be useful in some advanced use cases, for
* example to allow Spring Security to forcibly close the WebSocket session
* when the corresponding HTTP session expires.
* @since 4.1.2
*/
public WebSocketTransportRegistration setDecoratorFactories(WebSocketHandlerDecoratorFactory... factories) {
this.decoratorFactories.addAll(Arrays.asList(factories));
return this;
}
/**
* Add a factory that to decorate the handler used to process WebSocket
* messages. This may be useful for some advanced use cases, for example
* to allow Spring Security to forcibly close the WebSocket session when
* the corresponding HTTP session expires.
* @since 4.1.2
*/
public WebSocketTransportRegistration addDecoratorFactory(WebSocketHandlerDecoratorFactory factory) {
this.decoratorFactories.add(factory);
return this;
}
/**
* Configure one or more factories to decorate the handler used to process
* WebSocket messages. This may be useful in some advanced use cases, for
* example to allow Spring Security to forcibly close the WebSocket session
* when the corresponding HTTP session expires.
* @since 4.1.2
*/
public WebSocketTransportRegistration setDecoratorFactories(WebSocketHandlerDecoratorFactory... factories) {
this.decoratorFactories.addAll(Arrays.asList(factories));
return this;
}
/**
* Add a factory that to decorate the handler used to process WebSocket
* messages. This may be useful for some advanced use cases, for example
* to allow Spring Security to forcibly close the WebSocket session when
* the corresponding HTTP session expires.
* @since 4.1.2
*/
public WebSocketTransportRegistration addDecoratorFactory(WebSocketHandlerDecoratorFactory factory) {
this.decoratorFactories.add(factory);
return this;
}
/**
* Add a factory that to decorate the handler used to process WebSocket
* messages. This may be useful for some advanced use cases, for example
* to allow Spring Security to forcibly close the WebSocket session when
* the corresponding HTTP session expires.
* @since 4.1.2
*/
public WebSocketTransportRegistration addDecoratorFactory(WebSocketHandlerDecoratorFactory factory) {
this.decoratorFactories.add(factory);
return this;
}