@Bean @ConditionalOnMissingBean(BrokerApiVersion.class) public BrokerApiVersion brokerApiVersion() { return new BrokerApiVersion(); }
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws ServiceBrokerApiVersionException { if (version != null && !anyVersionAllowed()) { String apiVersion = request.getHeader(version.getBrokerApiVersionHeader()); if (!version.getApiVersion().equals(apiVersion)) { throw new ServiceBrokerApiVersionException(version.getApiVersion(), apiVersion); } } return true; }
private boolean anyVersionAllowed() { return BrokerApiVersion.API_VERSION_ANY.equals(version.getApiVersion()); }
private boolean anyVersionAllowed() { return BrokerApiVersion.API_VERSION_ANY.equals(version.getApiVersion()); }
@Bean @ConditionalOnMissingBean(BrokerApiVersion.class) public BrokerApiVersion serviceBrokerApiVersion() { return new BrokerApiVersion(); }
/** * Compares the service broker API version header to the supported version. * * @param request {@inheritDoc} * @param response {@inheritDoc} * @param handler {@inheritDoc} * @throws ServiceBrokerApiVersionException if the API version header value does not match the version * supported by the broker */ @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws ServiceBrokerApiVersionException { if (version != null && !anyVersionAllowed()) { String apiVersion = request.getHeader(version.getBrokerApiVersionHeader()); if (!version.getApiVersion().equals(apiVersion)) { throw new ServiceBrokerApiVersionException(version.getApiVersion(), apiVersion); } } return true; }
private boolean anyVersionAllowed() { return BrokerApiVersion.API_VERSION_ANY.equals(version.getApiVersion()); }
@Bean @ConditionalOnMissingBean(BrokerApiVersion.class) public BrokerApiVersion serviceBrokerApiVersion() { return new BrokerApiVersion(); }
PathPattern p = new PathPatternParser().parse(V2_API_PATH_PATTERN); if (p.matches(exchange.getRequest().getPath()) && version != null && !anyVersionAllowed()) { String apiVersion = exchange.getRequest().getHeaders().getFirst(version.getBrokerApiVersionHeader()); if (!version.getApiVersion().equals(apiVersion)) { String message = ServiceBrokerApiVersionErrorMessage.from(version.getApiVersion(), apiVersion).toString(); ServerHttpResponse response = exchange.getResponse(); String json;
@Test public void test_broker_version_is_all() { assertThat(brokerApiVersion.getApiVersion(), is(equalTo("*"))); }
@Bean @ConditionalOnMissingBean(BrokerApiVersion.class) @ConditionalOnProperty(prefix = "spring.cloud.openservicebroker", name = "api-version") public BrokerApiVersion serviceBrokerApiVersionProperty() { return new BrokerApiVersion(this.serviceBrokerProperties.getApiVersion()); }
@Bean @ConditionalOnMissingBean(BrokerApiVersion.class) @ConditionalOnProperty(prefix = "spring.cloud.openservicebroker", name = "api-version") public BrokerApiVersion serviceBrokerApiVersionProperty() { return new BrokerApiVersion(this.serviceBrokerProperties.getApiVersion()); }
@Bean public BrokerApiVersion brokerApiVersion() { return new BrokerApiVersion("2.13"); } }
@Bean public BrokerApiVersion version() { return new BrokerApiVersion("99.999"); } }
@Bean public BrokerApiVersion version() { return new BrokerApiVersion("99.999"); } }
@Bean public BrokerApiVersion version() { return new BrokerApiVersion(API_VERSION_CURRENT); } }
@Bean public BrokerApiVersion version() { return new BrokerApiVersion(API_VERSION_CURRENT); } }
@Test(expected = ServiceBrokerApiVersionException.class) public void versionMismatch() { BrokerApiVersion brokerApiVersion = new BrokerApiVersion("header", "9.9"); when(request.getHeader("header")).thenReturn("8.8"); ApiVersionInterceptor interceptor = new ApiVersionInterceptor(brokerApiVersion); interceptor.preHandle(request, response, null); }
private WebTestClient mockWithDefaultVersion() { return WebTestClient.bindToController(controller) .webFilter(new ApiVersionWebFilter(new BrokerApiVersion())) .build(); }
private WebTestClient mockWithExpectedVersion() { return WebTestClient.bindToController(controller) .webFilter(new ApiVersionWebFilter(new BrokerApiVersion("expected-version"))) .build(); }