Class WmsDataSource.Builder

java.lang.Object
com.luciad.formats.wms.WmsDataSource.Builder
All Implemented Interfaces:
AutoCloseable
Enclosing class:
WmsDataSource

public static final class WmsDataSource.Builder extends Object implements AutoCloseable
A builder to create WmsDataSource instances.

This builder requires at a minimum a URL and one or more layers.

  • Constructor Details

  • Method Details

    • finalize

      protected void finalize()
      Overrides:
      finalize in class Object
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
    • url

      @NotNull public WmsDataSource.Builder url(@NotNull String url)
      Sets the base URL of the WMS data source.

      Calling this function is mandatory.

      Parameters:
      url - the base URL of the WMS data source. Calling this function is mandatory.
      Returns:
      this builder.
    • addLayer

      @NotNull public WmsDataSource.Builder addLayer(@NotNull String layerName)
      Adds a WMS layer to load.

      The layer is added on top of other added WMS layers.

      At least one of the addLayer methods must be called.

      Parameters:
      layerName - The name of the WMS layer.
    • addLayer

      @NotNull public WmsDataSource.Builder addLayer(@NotNull String layerName, @NotNull String layerStyleName)
      Adds a WMS layer to load.

      The layer is added on top of other added WMS layers.

      At least one of the addLayer methods must be called.

      Parameters:
      layerName - The name of the WMS layer.
      layerStyleName - The WMS layer style name. This refers to a published named layer style of the WMS capabilities.
    • format

      @NotNull public WmsDataSource.Builder format(@NotNull String format)
      Sets the image format for GetMap requests.

      When this method is not called the image format is determined by the WMS model decoder.

      Parameters:
      format - the image format for GetMap requests.
      Returns:
      this builder.
    • transparent

      @NotNull public WmsDataSource.Builder transparent(boolean transparent)
      Sets if the requested image should have a transparent background, provided that the image format supports transparency.

      When this method is not called the default value is true.

      Parameters:
      transparent - if the requested image should have a transparent background, provided that the image format supports transparency.
      Returns:
      this builder.
    • styledLayerDescriptor

      @NotNull public WmsDataSource.Builder styledLayerDescriptor(@NotNull String styledLayerDescriptor)
      Sets the Styled Layer Descriptor to pass when making a request.

      This corresponds to the SLD_BODY request parameter in the GetMap request. The SLD must not be URL encoded. The SLD can be set using either one of the following method :

      Note that when these methods are called multiple times, only the last method call is taken into account.

      You can find more information within the article on how to use Styled Layer Descriptor.

      See Also:
    • styledLayerDescriptorUrl

      @NotNull public WmsDataSource.Builder styledLayerDescriptorUrl(@NotNull String styledLayerDescriptorUrl)
      Sets an URL pointing to a valid Styled Layer Descriptor which will be used by the server.

      This corresponds to the SLD request parameter in the GetMap request. The SLD can be set using either one of the following method :

      Note that when these methods are called multiple times, only the last method call is taken into account.

      You can find more information within the article on how to use Styled Layer Descriptor.

      See Also:
    • build

      @NotNull public WmsDataSource build() throws IllegalStateException
      Build the WMS data source.

      After calling this function, this builder should no longer be used.

      Returns:
      the WMS data source.
      Throws:
      IllegalStateException - If not all mandatory parameters are set.