Interface HttpRestClient

  • All Superinterfaces:
    org.refcodes.web.BaseUrlAccessor, org.refcodes.web.BaseUrlAccessor.BaseUrlBuilder<HttpRestClient>, org.refcodes.web.BaseUrlAccessor.BaseUrlMutator, org.refcodes.web.BaseUrlAccessor.BaseUrlProperty, org.refcodes.web.BasicAuthCredentialsAccessor, org.refcodes.web.BasicAuthCredentialsAccessor.BasicAuthCredentialsBuilder<RestClient>, org.refcodes.web.BasicAuthCredentialsAccessor.BasicAuthCredentialsMutator, org.refcodes.web.BasicAuthCredentialsAccessor.BasicAuthCredentialsProperty, org.refcodes.component.Closable, org.refcodes.component.ConnectionComponent<org.refcodes.web.HttpClientContext>, org.refcodes.component.ConnectionOpenable<org.refcodes.web.HttpClientContext>, org.refcodes.component.ConnectionStatusAccessor, org.refcodes.component.LinkComponent, org.refcodes.web.MediaTypeFactoryLookup, org.refcodes.web.MediaTypeFactoryLookup.MutableMediaTypeFactoryLookup, org.refcodes.web.OauthTokenAccessor, org.refcodes.web.OauthTokenAccessor.OauthTokenBuilder<RestClient>, org.refcodes.web.OauthTokenAccessor.OauthTokenMutator, org.refcodes.web.OauthTokenAccessor.OauthTokenProperty, org.refcodes.component.Openable, org.refcodes.component.OpenedAccessor, org.refcodes.runtime.RequestCorrelation<RestClient>, RestClient, RestDeleteClient, RestGetClient, RestPostClient, RestPutClient, RestRequestClient, RestRequestHandler, org.refcodes.runtime.SessionCorrelation<RestClient>, org.refcodes.security.TrustStoreDescriptorAccessor, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorBuilder<HttpRestClient>, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorMutator, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorProperty, org.refcodes.web.UserAgentAccessor, org.refcodes.web.UserAgentAccessor.UserAgentBuilder<RestClient>, org.refcodes.web.UserAgentAccessor.UserAgentMutator, org.refcodes.web.UserAgentAccessor.UserAgentProperty
    All Known Subinterfaces:
    HttpDiscoveryRestClient<B>
    All Known Implementing Classes:
    AbstractHttpDiscoveryRestClientDecorator, AbstractHttpRestClientDecorator, HttpRestClientImpl, HttpRestClientSingleton

    public interface HttpRestClient
    extends org.refcodes.component.ConnectionStatusAccessor, org.refcodes.component.ConnectionComponent<org.refcodes.web.HttpClientContext>, RestClient, org.refcodes.component.LinkComponent, org.refcodes.web.BaseUrlAccessor.BaseUrlProperty, org.refcodes.web.BaseUrlAccessor.BaseUrlBuilder<HttpRestClient>, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorProperty, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorBuilder<HttpRestClient>
    Extends a RestClient to be capable of providing a User-Agent with UserAgentAccessor.UserAgentMutator.setUserAgent(String) (withUserAgent(String)) and to be capable of using base URLs to be set with BaseUrlAccessor.BaseUrlMutator.setBaseUrl(String) ( withBaseUrl(String)). This type is intended to be used by different separate hierarchy branches by providing the generic type <B>, ensuring a coherent type hierarchy for each branch. To prepare HTTPS connections, use the methods such as: open(Url, TrustStoreDescriptor) or open(HttpClientContext). A HttpRestClient can be shutdown via Closable.close().
    • Method Detail

      • open

        default void open()
                   throws IOException
        Specified by:
        open in interface org.refcodes.component.Openable
        Throws:
        IOException
      • open

        default void open​(org.refcodes.web.HttpClientContext aCtx)
                   throws IOException
        Specified by:
        open in interface org.refcodes.component.ConnectionOpenable<org.refcodes.web.HttpClientContext>
        Throws:
        IOException
      • open

        default void open​(org.refcodes.security.TrustStoreDescriptor aStoreDescriptor)
                   throws IOException
        Configures the HTTPS client connection with the provided configuration parameters.
        Parameters:
        aStoreDescriptor - The TrustStoreDescriptor pointing to your KeyStore.
        Throws:
        IOException - thrown in case something went wrong.
      • open

        default void open​(org.refcodes.web.Url aBaseUrl)
                   throws IOException
        Configures the HTTPS client connection with the provided configuration parameters.
        Parameters:
        aBaseUrl - The base Url to be used.
        Throws:
        IOException - thrown in case something went wrong.
      • open

        void open​(org.refcodes.web.Url aBaseUrl,
                  org.refcodes.security.TrustStoreDescriptor aStoreDescriptor)
           throws IOException
        Configures the HTTPS client connection with the provided configuration parameters.
        Parameters:
        aBaseUrl - The base Url to be used.
        aStoreDescriptor - The TrustStoreDescriptor pointing to your KeyStore.
        Throws:
        IOException - thrown in case something went wrong.
      • withBaseUrl

        default HttpRestClient withBaseUrl​(org.refcodes.web.Url aBaseUrl)
        Specified by:
        withBaseUrl in interface org.refcodes.web.BaseUrlAccessor.BaseUrlBuilder<HttpRestClient>
      • withBaseUrl

        default HttpRestClient withBaseUrl​(URL aBaseURL)
        Specified by:
        withBaseUrl in interface org.refcodes.web.BaseUrlAccessor.BaseUrlBuilder<HttpRestClient>
      • withBasicAuthCredentials

        default HttpRestClient withBasicAuthCredentials​(org.refcodes.web.BasicAuthCredentials aBasicAuthCredentials)
        Specified by:
        withBasicAuthCredentials in interface org.refcodes.web.BasicAuthCredentialsAccessor.BasicAuthCredentialsBuilder<RestClient>
      • withBasicAuthCredentials

        default HttpRestClient withBasicAuthCredentials​(String aUserName,
                                                        String aSecret)
        Specified by:
        withBasicAuthCredentials in interface org.refcodes.web.BasicAuthCredentialsAccessor.BasicAuthCredentialsBuilder<RestClient>
      • withDisableRequestCorrelation

        default HttpRestClient withDisableRequestCorrelation()
        Specified by:
        withDisableRequestCorrelation in interface org.refcodes.runtime.RequestCorrelation<RestClient>
      • withDisableSessionCorrelation

        default HttpRestClient withDisableSessionCorrelation()
        Specified by:
        withDisableSessionCorrelation in interface org.refcodes.runtime.SessionCorrelation<RestClient>
      • withEnableRequestCorrelation

        default HttpRestClient withEnableRequestCorrelation()
        Specified by:
        withEnableRequestCorrelation in interface org.refcodes.runtime.RequestCorrelation<RestClient>
      • withEnableSessionCorrelation

        default HttpRestClient withEnableSessionCorrelation()
        Specified by:
        withEnableSessionCorrelation in interface org.refcodes.runtime.SessionCorrelation<RestClient>
      • withOAuthToken

        default HttpRestClient withOAuthToken​(org.refcodes.web.OauthToken aOauthToken)
        Specified by:
        withOAuthToken in interface org.refcodes.web.OauthTokenAccessor.OauthTokenBuilder<RestClient>
      • withRequestCorrelation

        default HttpRestClient withRequestCorrelation​(boolean hasRequestCorrelation)
        Specified by:
        withRequestCorrelation in interface org.refcodes.runtime.RequestCorrelation<RestClient>
      • withSessionCorrelation

        default HttpRestClient withSessionCorrelation​(boolean hasSessionCorrelation)
        Specified by:
        withSessionCorrelation in interface org.refcodes.runtime.SessionCorrelation<RestClient>
      • withTrustStoreDescriptor

        default HttpRestClient withTrustStoreDescriptor​(org.refcodes.security.TrustStoreDescriptor aStoreDescriptor)
        Specified by:
        withTrustStoreDescriptor in interface org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorBuilder<HttpRestClient>
      • withUserAgent

        default HttpRestClient withUserAgent​(String aUserAgent)
        Specified by:
        withUserAgent in interface org.refcodes.web.UserAgentAccessor.UserAgentBuilder<RestClient>