Class ContainControllerImpl

java.lang.Object
de.dlr.proseo.geotools.rest.ContainControllerImpl
All Implemented Interfaces:
ContainController

@Component public class ContainControllerImpl extends Object implements ContainController
Controller to handle the contains request, which checks whether a specified polygon is contained in selected or all regions from application.yml.
Author:
Ernst Melchinger
  • Constructor Details

    • ContainControllerImpl

      public ContainControllerImpl()
  • Method Details

    • contains

      public org.springframework.http.ResponseEntity<Boolean> contains(String[] poly, String[] type)
      Checks whether an area, i.e. the Polygon defined by the array poly is contained in at least one of the provided regions. If none are given, all available region types will be considered. For longer arrays, using the containspoly() method with a RestPolygon is recommended, and for high lengths in fact necessary.
      Specified by:
      contains in interface ContainController
      Parameters:
      poly - String array containing latitude (uneven fields)/longitude (uneven fields) pairs in Double format, which together describe an area to be compared to a number of specified regions
      type - String array used to determine which regions (specified in application.yml) to check. If the array parameter is null or empty, all available region types will be considered
      Returns:
      HttpStatus 200 and true if the polygon is contained in one or more of the specified regions (all known regions if none were specified), false otherwise OR HttpStatus 400 and an error message if the input was invalid OR HttpStatus 500 and an error message if the input was valid but the implementation is pending or a problem occurred while trying to process a shape file
    • containspoly

      public org.springframework.http.ResponseEntity<Boolean> containspoly(String[] type, RestPolygon restPolygon)
      Checks whether an area defined by a RestPolygin is contained in at least one of the provided regions. If none are given, all available region types will be considered.
      Specified by:
      containspoly in interface ContainController
      Parameters:
      type - String array used to determine which regions (specified in application.yml) to check. If the array parameter is null or empty, all available region types will be considered
      restPolygon - RestPolygon describing an area to be compared to a number of specified regions
      Returns:
      HttpStatus 200 and true if the polygon is contained in one or more of the specified regions (all known regions if none were specified), false otherwise OR HttpStatus 400 and an error message if the input was invalid OR HttpStatus 500 and an error message if the input was valid but the implementation is pending or a problem occurred while trying to process a shape file