@Component(value="rest-openapi")
public final class RestOpenApiComponent
extends org.apache.camel.support.DefaultComponent
implements org.apache.camel.SSLContextParametersAware
RestProducerFactory components to act as REST
clients, but it configures them from OpenApi specification. Client needs to
point to operation that it wants to invoke via REST, provide any additional
HTTP headers as headers in the Camel message, and any payload as the body of
the incoming message.
Example usage using Java DSL:
from(...).to("rest-openapi:https://petstore3.swagger.io/api/v3/openapi.json#getPetById")
This relies on only one RestProducerFactory component being available
to Camel, you can use specific, for instance preconfigured component by using
the componentName endpoint property. For example using Undertow
component in Java DSL:
Component undertow = new UndertowComponent();
undertow.setSslContextParameters(...);
//...
camelContext.addComponent("myUndertow", undertow);
from(...).to("rest-openapi:https://petstore3.swagger.io/api/v3/openapi.json#getPetById?componentName=myUndertow")
The most concise way of using this component would be to define it in the
Camel context under a meaningful name, for example:
Component petstore = new RestOpenApiComponent();
petstore.setSpecificationUri("https://petstore3.swagger.io/api/v3/openapi.json");
petstore.setComponentName("undertow");
//...
camelContext.addComponent("petstore", petstore);
from(...).to("petstore:getPetById")
| Modifier and Type | Field and Description |
|---|---|
static String |
DEFAULT_BASE_PATH |
| Constructor and Description |
|---|
RestOpenApiComponent() |
RestOpenApiComponent(org.apache.camel.CamelContext context) |
| Modifier and Type | Method and Description |
|---|---|
protected org.apache.camel.Endpoint |
createEndpoint(String uri,
String remaining,
Map<String,Object> parameters) |
String |
getBasePath() |
String |
getComponentName() |
String |
getConsumes() |
String |
getHost() |
String |
getProduces() |
URI |
getSpecificationUri() |
org.apache.camel.support.jsse.SSLContextParameters |
getSslContextParameters() |
boolean |
isUseGlobalSslContextParameters() |
void |
setBasePath(String basePath) |
void |
setComponentName(String componentName) |
void |
setConsumes(String consumes) |
void |
setHost(String host) |
void |
setProduces(String produces) |
void |
setSpecificationUri(URI specificationUri) |
void |
setSslContextParameters(org.apache.camel.support.jsse.SSLContextParameters sslContextParameters) |
void |
setUseGlobalSslContextParameters(boolean useGlobalSslContextParameters) |
afterConfiguration, createEndpoint, createEndpoint, doBuild, doStart, doStop, getAndRemoveOrResolveReferenceParameter, getAndRemoveOrResolveReferenceParameter, getAndRemoveParameter, getAndRemoveParameter, getCamelContext, getComponentPropertyConfigurer, getEndpointPropertyConfigurer, getExtension, getSupportedExtensions, ifStartsWithReturnRemainder, isBasicPropertyBinding, isBridgeErrorHandler, isLazyStartProducer, registerExtension, registerExtension, resolveAndRemoveReferenceListParameter, resolveAndRemoveReferenceListParameter, resolveAndRemoveReferenceParameter, resolveAndRemoveReferenceParameter, setBasicPropertyBinding, setBridgeErrorHandler, setCamelContext, setLazyStartProducer, setProperties, setProperties, setProperties, useIntrospectionOnEndpoint, useRawUri, validateParameters, validateURIbuild, doFail, doInit, doLifecycleChange, doResume, doShutdown, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspendclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitretrieveGlobalSslContextParametersgetCamelContext, setCamelContext, trySetCamelContextpublic static final String DEFAULT_BASE_PATH
public RestOpenApiComponent()
public RestOpenApiComponent(org.apache.camel.CamelContext context)
protected org.apache.camel.Endpoint createEndpoint(String uri, String remaining, Map<String,Object> parameters) throws Exception
createEndpoint in class org.apache.camel.support.DefaultComponentExceptionpublic String getBasePath()
public String getComponentName()
public String getConsumes()
public String getHost()
public String getProduces()
public URI getSpecificationUri()
public org.apache.camel.support.jsse.SSLContextParameters getSslContextParameters()
public boolean isUseGlobalSslContextParameters()
isUseGlobalSslContextParameters in interface org.apache.camel.SSLContextParametersAwarepublic void setBasePath(String basePath)
public void setComponentName(String componentName)
public void setConsumes(String consumes)
public void setHost(String host)
public void setProduces(String produces)
public void setSpecificationUri(URI specificationUri)
public void setSslContextParameters(org.apache.camel.support.jsse.SSLContextParameters sslContextParameters)
public void setUseGlobalSslContextParameters(boolean useGlobalSslContextParameters)
setUseGlobalSslContextParameters in interface org.apache.camel.SSLContextParametersAwareApache Camel