Class FilterByAreaRequest

  • All Implemented Interfaces:
    org.apache.avro.generic.GenericContainer, org.apache.avro.generic.IndexedRecord

    public class FilterByAreaRequest
    extends Object
    implements org.apache.avro.generic.IndexedRecord
    A set of parameters for GPUdb.filterByArea.

    Calculates which objects from a table are within a named area of interest (NAI/polygon). The operation is synchronous, meaning that a response will not be returned until all the matching objects are fully available. The response payload provides the count of the resulting set. A new resultant set (view) which satisfies the input NAI restriction specification is created with the name viewName passed in as part of the input.

    • Constructor Detail

      • FilterByAreaRequest

        public FilterByAreaRequest()
        Constructs a FilterByAreaRequest object with default parameters.
      • FilterByAreaRequest

        public FilterByAreaRequest​(String tableName,
                                   String viewName,
                                   String xColumnName,
                                   List<Double> xVector,
                                   String yColumnName,
                                   List<Double> yVector,
                                   Map<String,​String> options)
        Constructs a FilterByAreaRequest object with the specified parameters.
        Parameters:
        tableName - Name of the table to filter, in [schema_name.]table_name format, using standard name resolution rules. This may be the name of a table or a view (when chaining queries).
        viewName - If provided, then this will be the name of the view containing the results, in [schema_name.]view_name format, using standard name resolution rules and meeting table naming criteria. Must not be an already existing table or view. The default value is ''.
        xColumnName - Name of the column containing the x values to be filtered.
        xVector - List of x coordinates of the vertices of the polygon representing the area to be filtered.
        yColumnName - Name of the column containing the y values to be filtered.
        yVector - List of y coordinates of the vertices of the polygon representing the area to be filtered.
        options - Optional parameters.
        • CREATE_TEMP_TABLE: If TRUE, a unique temporary table name will be generated in the sys_temp schema and used in place of viewName. This is always allowed even if the caller does not have permission to create tables. The generated name is returned in QUALIFIED_VIEW_NAME. Supported values: The default value is FALSE.
        • COLLECTION_NAME: [DEPRECATED--please specify the containing schema for the view as part of viewName and use GPUdb.createSchema to create the schema if non-existent] Name of a schema for the newly created view. If the schema provided is non-existent, it will be automatically created.
        The default value is an empty Map.
    • Method Detail

      • getClassSchema

        public static org.apache.avro.Schema getClassSchema()
        This method supports the Avro framework and is not intended to be called directly by the user.
        Returns:
        The schema for the class.
      • getTableName

        public String getTableName()
        Name of the table to filter, in [schema_name.]table_name format, using standard name resolution rules. This may be the name of a table or a view (when chaining queries).
        Returns:
        The current value of tableName.
      • setTableName

        public FilterByAreaRequest setTableName​(String tableName)
        Name of the table to filter, in [schema_name.]table_name format, using standard name resolution rules. This may be the name of a table or a view (when chaining queries).
        Parameters:
        tableName - The new value for tableName.
        Returns:
        this to mimic the builder pattern.
      • getViewName

        public String getViewName()
        If provided, then this will be the name of the view containing the results, in [schema_name.]view_name format, using standard name resolution rules and meeting table naming criteria. Must not be an already existing table or view. The default value is ''.
        Returns:
        The current value of viewName.
      • setViewName

        public FilterByAreaRequest setViewName​(String viewName)
        If provided, then this will be the name of the view containing the results, in [schema_name.]view_name format, using standard name resolution rules and meeting table naming criteria. Must not be an already existing table or view. The default value is ''.
        Parameters:
        viewName - The new value for viewName.
        Returns:
        this to mimic the builder pattern.
      • getXColumnName

        public String getXColumnName()
        Name of the column containing the x values to be filtered.
        Returns:
        The current value of xColumnName.
      • setXColumnName

        public FilterByAreaRequest setXColumnName​(String xColumnName)
        Name of the column containing the x values to be filtered.
        Parameters:
        xColumnName - The new value for xColumnName.
        Returns:
        this to mimic the builder pattern.
      • getXVector

        public List<Double> getXVector()
        List of x coordinates of the vertices of the polygon representing the area to be filtered.
        Returns:
        The current value of xVector.
      • setXVector

        public FilterByAreaRequest setXVector​(List<Double> xVector)
        List of x coordinates of the vertices of the polygon representing the area to be filtered.
        Parameters:
        xVector - The new value for xVector.
        Returns:
        this to mimic the builder pattern.
      • getYColumnName

        public String getYColumnName()
        Name of the column containing the y values to be filtered.
        Returns:
        The current value of yColumnName.
      • setYColumnName

        public FilterByAreaRequest setYColumnName​(String yColumnName)
        Name of the column containing the y values to be filtered.
        Parameters:
        yColumnName - The new value for yColumnName.
        Returns:
        this to mimic the builder pattern.
      • getYVector

        public List<Double> getYVector()
        List of y coordinates of the vertices of the polygon representing the area to be filtered.
        Returns:
        The current value of yVector.
      • setYVector

        public FilterByAreaRequest setYVector​(List<Double> yVector)
        List of y coordinates of the vertices of the polygon representing the area to be filtered.
        Parameters:
        yVector - The new value for yVector.
        Returns:
        this to mimic the builder pattern.
      • getOptions

        public Map<String,​String> getOptions()
        Optional parameters.
        • CREATE_TEMP_TABLE: If TRUE, a unique temporary table name will be generated in the sys_temp schema and used in place of viewName. This is always allowed even if the caller does not have permission to create tables. The generated name is returned in QUALIFIED_VIEW_NAME. Supported values: The default value is FALSE.
        • COLLECTION_NAME: [DEPRECATED--please specify the containing schema for the view as part of viewName and use GPUdb.createSchema to create the schema if non-existent] Name of a schema for the newly created view. If the schema provided is non-existent, it will be automatically created.
        The default value is an empty Map.
        Returns:
        The current value of options.
      • setOptions

        public FilterByAreaRequest setOptions​(Map<String,​String> options)
        Optional parameters.
        • CREATE_TEMP_TABLE: If TRUE, a unique temporary table name will be generated in the sys_temp schema and used in place of viewName. This is always allowed even if the caller does not have permission to create tables. The generated name is returned in QUALIFIED_VIEW_NAME. Supported values: The default value is FALSE.
        • COLLECTION_NAME: [DEPRECATED--please specify the containing schema for the view as part of viewName and use GPUdb.createSchema to create the schema if non-existent] Name of a schema for the newly created view. If the schema provided is non-existent, it will be automatically created.
        The default value is an empty Map.
        Parameters:
        options - The new value for options.
        Returns:
        this to mimic the builder pattern.
      • getSchema

        public org.apache.avro.Schema getSchema()
        This method supports the Avro framework and is not intended to be called directly by the user.
        Specified by:
        getSchema in interface org.apache.avro.generic.GenericContainer
        Returns:
        The schema object describing this class.
      • get

        public Object get​(int index)
        This method supports the Avro framework and is not intended to be called directly by the user.
        Specified by:
        get in interface org.apache.avro.generic.IndexedRecord
        Parameters:
        index - the position of the field to get
        Returns:
        value of the field with the given index.
        Throws:
        IndexOutOfBoundsException
      • put

        public void put​(int index,
                        Object value)
        This method supports the Avro framework and is not intended to be called directly by the user.
        Specified by:
        put in interface org.apache.avro.generic.IndexedRecord
        Parameters:
        index - the position of the field to set
        value - the value to set
        Throws:
        IndexOutOfBoundsException
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object