Class IPStack


  • public class IPStack
    extends RegionLocationService
    The "IPStack.com" service provider for region location information.
    Author:
    Christopher Mindus
    • Constructor Detail

      • IPStack

        public IPStack​(IWebServiceEngine wse,
                       ServerSettings settings)
        Constructs the service provider for the region location information. The server will once constructed, register the service with its name. The name is "IPStack" and the default timeout is set to 20 seconds, but the site is really fast.
        Parameters:
        wse - The WebService engine used to determine proxy.
        settings - Server settings.
    • Method Detail

      • isAvailable

        protected boolean isAvailable()
        Returns if the service provider is available to use.

        Subclasses override this method to return another value than true.

        Overrides:
        isAvailable in class RegionLocationService
        Returns:
        true for OK to use, false if not properly configured.
      • request

        protected RegionLocation request​(java.lang.String ipAddress)
                                  throws java.io.IOException,
                                         java.io.InterruptedIOException,
                                         java.lang.InterruptedException
        Requests region location information from the service provider. When the request has completed with or without error, call
        Specified by:
        request in class RegionLocationService
        Parameters:
        ipAddress - The IP address request.
        Returns:
        The region location information, must always be non-null.
        Throws:
        java.io.IOException - For I/O errors.
        java.io.InterruptedIOException - If an I/O operation is interrupted.
        java.lang.InterruptedException - If thread is interrupted.