Class AbstractApiComponent<E extends Enum<E> & ApiName,​T,​S extends ApiCollection<E,​T>>

  • All Implemented Interfaces:
    AutoCloseable, org.apache.camel.CamelContextAware, org.apache.camel.Component, org.apache.camel.Service, org.apache.camel.ShutdownableService, org.apache.camel.StatefulService, org.apache.camel.SuspendableService

    public abstract class AbstractApiComponent<E extends Enum<E> & ApiName,​T,​S extends ApiCollection<E,​T>>
    extends DefaultComponent
    Abstract base class for API Component Camel Component classes.
    • Field Detail

      • configuration

        @Metadata(label="advanced",
                  description="Component configuration")
        protected T configuration
    • Constructor Detail

      • AbstractApiComponent

        public AbstractApiComponent​(Class<? extends org.apache.camel.Endpoint> endpointClass,
                                    Class<E> apiNameClass,
                                    S collection)
      • AbstractApiComponent

        public AbstractApiComponent​(org.apache.camel.CamelContext context,
                                    Class<? extends org.apache.camel.Endpoint> endpointClass,
                                    Class<E> apiNameClass,
                                    S collection)
    • Method Detail

      • createEndpoint

        protected org.apache.camel.Endpoint createEndpoint​(String uri,
                                                           String remaining,
                                                           Map<String,​Object> parameters)
                                                    throws Exception
        Description copied from class: DefaultComponent
        A factory method allowing derived components to create a new endpoint from the given URI, remaining path and optional parameters
        Specified by:
        createEndpoint in class DefaultComponent
        Parameters:
        uri - the full URI of the endpoint
        remaining - the remaining part of the URI without the query parameters or component prefix
        parameters - the optional parameters passed in
        Returns:
        a newly created endpoint or null if the endpoint cannot be created based on the inputs
        Throws:
        Exception - is thrown if error creating the endpoint
      • afterPropertiesSet

        protected void afterPropertiesSet​(T endpointConfiguration)
      • getApiName

        protected abstract E getApiName​(String apiNameStr)
      • createEndpoint

        protected abstract org.apache.camel.Endpoint createEndpoint​(String uri,
                                                                    String methodName,
                                                                    E apiName,
                                                                    T endpointConfiguration)
      • createEndpointConfiguration

        protected T createEndpointConfiguration​(E name)
                                         throws Exception
        Throws:
        Exception
      • getConfiguration

        public T getConfiguration()
      • setConfiguration

        public void setConfiguration​(T configuration)