Class UniversalisRestImpl

java.lang.Object
de.chojo.universalis.rest.UniversalisRestImpl
All Implemented Interfaces:
UniversalisRest

public class UniversalisRestImpl extends Object implements UniversalisRest
Implementation of an universalis rest client
  • Constructor Details

    • UniversalisRestImpl

      public UniversalisRestImpl(HttpClient http, ScheduledExecutorService executorService, NameSupplier itemNameSupplier)
      Create a new universalis rest client
      Parameters:
      http - http client
      executorService - executor service
      itemNameSupplier - item name supplier
  • Method Details

    • http

      public HttpClient http()
      Get the http client
      Returns:
      http client
    • uri

      public org.apache.hc.core5.net.URIBuilder uri()
      Get a pre configured uri builder
      Returns:
      new uri builder
    • objectMapper

      public com.fasterxml.jackson.databind.ObjectMapper objectMapper()
      Get the object mapper
      Returns:
      object mapper
    • marketBoard

      @CheckReturnValue public MarketBoardRequest marketBoard()
      Description copied from interface: UniversalisRest
      Retrieves the data currently shown on the market board for the requested item and world or data center.
      Specified by:
      marketBoard in interface UniversalisRest
      Returns:
      request builder
    • worlds

      Description copied from interface: UniversalisRest
      Returns the IDs and names of all worlds supported by the API.
      Specified by:
      worlds in interface UniversalisRest
      Returns:
      request builder
    • dataCenters

      @CheckReturnValue public DataCentersRequest dataCenters()
      Description copied from interface: UniversalisRest
      Returns all data centers supported by the API.
      Specified by:
      dataCenters in interface UniversalisRest
      Returns:
      request builder
    • history

      Description copied from interface: UniversalisRest
      Retrieves the history data for the requested item and world or data center.
      Specified by:
      history in interface UniversalisRest
      Returns:
      request builder
    • taxRates

      Description copied from interface: UniversalisRest
      Retrieves the current tax rate data for the specified world. This data is provided by the Retainer Vocate in each major city.
      Specified by:
      taxRates in interface UniversalisRest
      Returns:
      request builder
    • marketable

      @CheckReturnValue public MarketableRequest marketable()
      Description copied from interface: UniversalisRest
      Returns the set of marketable item IDs.
      Specified by:
      marketable in interface UniversalisRest
      Returns:
      request builder
    • extra

      @CheckReturnValue public Extra extra()
      Description copied from interface: UniversalisRest
      Allows requests on route of the extra route
      Specified by:
      extra in interface UniversalisRest
      Returns:
      extra route
    • getAsyncAndMap

      public <T> CompletableFuture<T> getAsyncAndMap(org.apache.hc.core5.net.URIBuilder uri, Class<T> result)
      Send an asynchronous request to the uri and map the result body
      Type Parameters:
      T - result type
      Parameters:
      uri - uri
      result - result class
      Returns:
      future with result
    • getAndMap

      public <T> T getAndMap(org.apache.hc.core5.net.URIBuilder uri, Class<T> result)
      Send a request and map the result body
      Type Parameters:
      T - result type
      Parameters:
      uri - uri
      result - result class
      Returns:
      result
    • getAsyncAndMap

      public <T> CompletableFuture<T> getAsyncAndMap(URI uri, Class<T> result)
      Send an asynchronous request to the uri and map the result body
      Type Parameters:
      T - result type
      Parameters:
      uri - uri
      result - result class
      Returns:
      future with result
    • getAndMap

      public <T> T getAndMap(URI uri, Class<T> result)
      Send a request and map the result body
      Type Parameters:
      T - result type
      Parameters:
      uri - uri
      result - result class
      Returns:
      result
    • getAsyncAndMap

      public <T> CompletableFuture<T> getAsyncAndMap(HttpRequest request, Class<T> result)
      Send an asynchronous request and map the result body
      Type Parameters:
      T - result type
      Parameters:
      request - request
      result - result class
      Returns:
      future with result
    • getAndMap

      public <T> T getAndMap(HttpRequest request, Class<T> result)
      Send a request and map the result body
      Type Parameters:
      T - result type
      Parameters:
      request - request
      result - result class
      Returns:
      result