Package com.gpudb.protocol
Class FilterByRadiusRequest
- java.lang.Object
-
- com.gpudb.protocol.FilterByRadiusRequest
-
- All Implemented Interfaces:
org.apache.avro.generic.GenericContainer,org.apache.avro.generic.IndexedRecord
public class FilterByRadiusRequest extends Object implements org.apache.avro.generic.IndexedRecord
A set of parameters forGPUdb.filterByRadius.Calculates which objects from a table lie within a circle with the given radius and center point (i.e. circular NAI). The operation is synchronous, meaning that a response will not be returned until all the objects are fully available. The response payload provides the count of the resulting set. A new resultant set (view) which satisfies the input circular NAI restriction specification is also created if a
viewNameis passed in as part of the request.For track data, all track points that lie within the circle plus one point on either side of the circle (if the track goes beyond the circle) will be included in the result.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classFilterByRadiusRequest.OptionsA set of string constants for theFilterByRadiusRequestparameteroptions.
-
Constructor Summary
Constructors Constructor Description FilterByRadiusRequest()Constructs a FilterByRadiusRequest object with default parameters.FilterByRadiusRequest(String tableName, String viewName, String xColumnName, double xCenter, String yColumnName, double yCenter, double radius, Map<String,String> options)Constructs a FilterByRadiusRequest object with the specified parameters.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)Objectget(int index)This method supports the Avro framework and is not intended to be called directly by the user.static org.apache.avro.SchemagetClassSchema()This method supports the Avro framework and is not intended to be called directly by the user.Map<String,String>getOptions()Optional parameters.doublegetRadius()The radius of the circle within which the search will be performed.org.apache.avro.SchemagetSchema()This method supports the Avro framework and is not intended to be called directly by the user.StringgetTableName()Name of the table on which the filter by radius operation will be performed, in [schema_name.]table_name format, using standard name resolution rules.StringgetViewName()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.doublegetXCenter()Value of the longitude of the center.StringgetXColumnName()Name of the column to be used for the x-coordinate (the longitude) of the center.doublegetYCenter()Value of the latitude of the center.StringgetYColumnName()Name of the column to be used for the y-coordinate-the latitude-of the center.inthashCode()voidput(int index, Object value)This method supports the Avro framework and is not intended to be called directly by the user.FilterByRadiusRequestsetOptions(Map<String,String> options)Optional parameters.FilterByRadiusRequestsetRadius(double radius)The radius of the circle within which the search will be performed.FilterByRadiusRequestsetTableName(String tableName)Name of the table on which the filter by radius operation will be performed, in [schema_name.]table_name format, using standard name resolution rules.FilterByRadiusRequestsetViewName(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.FilterByRadiusRequestsetXCenter(double xCenter)Value of the longitude of the center.FilterByRadiusRequestsetXColumnName(String xColumnName)Name of the column to be used for the x-coordinate (the longitude) of the center.FilterByRadiusRequestsetYCenter(double yCenter)Value of the latitude of the center.FilterByRadiusRequestsetYColumnName(String yColumnName)Name of the column to be used for the y-coordinate-the latitude-of the center.StringtoString()
-
-
-
Constructor Detail
-
FilterByRadiusRequest
public FilterByRadiusRequest()
Constructs a FilterByRadiusRequest object with default parameters.
-
FilterByRadiusRequest
public FilterByRadiusRequest(String tableName, String viewName, String xColumnName, double xCenter, String yColumnName, double yCenter, double radius, Map<String,String> options)
Constructs a FilterByRadiusRequest object with the specified parameters.- Parameters:
tableName- Name of the table on which the filter by radius operation will be performed, in [schema_name.]table_name format, using standard name resolution rules. Must be an existing table.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 to be used for the x-coordinate (the longitude) of the center.xCenter- Value of the longitude of the center. Must be within [-180.0, 180.0]. The minimum allowed value is -180. The maximum allowed value is 180.yColumnName- Name of the column to be used for the y-coordinate-the latitude-of the center.yCenter- Value of the latitude of the center. Must be within [-90.0, 90.0]. The minimum allowed value is -90. The maximum allowed value is 90.radius- The radius of the circle within which the search will be performed. Must be a non-zero positive value. It is in meters; so, for example, a value of '42000' means 42 km. The minimum allowed value is 0. The maximum allowed value is MAX_INT.options- Optional parameters.CREATE_TEMP_TABLE: IfTRUE, a unique temporary table name will be generated in the sys_temp schema and used in place ofviewName. This is always allowed even if the caller does not have permission to create tables. The generated name is returned inQUALIFIED_VIEW_NAME. Supported values: The default value isFALSE.COLLECTION_NAME: [DEPRECATED--please specify the containing schema for the view as part ofviewNameand useGPUdb.createSchemato create the schema if non-existent] Name of a schema which is to contain the newly created view. If the schema is non-existent, it will be automatically created.
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 on which the filter by radius operation will be performed, in [schema_name.]table_name format, using standard name resolution rules. Must be an existing table.- Returns:
- The current value of
tableName.
-
setTableName
public FilterByRadiusRequest setTableName(String tableName)
Name of the table on which the filter by radius operation will be performed, in [schema_name.]table_name format, using standard name resolution rules. Must be an existing table.- Parameters:
tableName- The new value fortableName.- Returns:
thisto 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 FilterByRadiusRequest 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 forviewName.- Returns:
thisto mimic the builder pattern.
-
getXColumnName
public String getXColumnName()
Name of the column to be used for the x-coordinate (the longitude) of the center.- Returns:
- The current value of
xColumnName.
-
setXColumnName
public FilterByRadiusRequest setXColumnName(String xColumnName)
Name of the column to be used for the x-coordinate (the longitude) of the center.- Parameters:
xColumnName- The new value forxColumnName.- Returns:
thisto mimic the builder pattern.
-
getXCenter
public double getXCenter()
Value of the longitude of the center. Must be within [-180.0, 180.0]. The minimum allowed value is -180. The maximum allowed value is 180.- Returns:
- The current value of
xCenter.
-
setXCenter
public FilterByRadiusRequest setXCenter(double xCenter)
Value of the longitude of the center. Must be within [-180.0, 180.0]. The minimum allowed value is -180. The maximum allowed value is 180.- Parameters:
xCenter- The new value forxCenter.- Returns:
thisto mimic the builder pattern.
-
getYColumnName
public String getYColumnName()
Name of the column to be used for the y-coordinate-the latitude-of the center.- Returns:
- The current value of
yColumnName.
-
setYColumnName
public FilterByRadiusRequest setYColumnName(String yColumnName)
Name of the column to be used for the y-coordinate-the latitude-of the center.- Parameters:
yColumnName- The new value foryColumnName.- Returns:
thisto mimic the builder pattern.
-
getYCenter
public double getYCenter()
Value of the latitude of the center. Must be within [-90.0, 90.0]. The minimum allowed value is -90. The maximum allowed value is 90.- Returns:
- The current value of
yCenter.
-
setYCenter
public FilterByRadiusRequest setYCenter(double yCenter)
Value of the latitude of the center. Must be within [-90.0, 90.0]. The minimum allowed value is -90. The maximum allowed value is 90.- Parameters:
yCenter- The new value foryCenter.- Returns:
thisto mimic the builder pattern.
-
getRadius
public double getRadius()
The radius of the circle within which the search will be performed. Must be a non-zero positive value. It is in meters; so, for example, a value of '42000' means 42 km. The minimum allowed value is 0. The maximum allowed value is MAX_INT.- Returns:
- The current value of
radius.
-
setRadius
public FilterByRadiusRequest setRadius(double radius)
The radius of the circle within which the search will be performed. Must be a non-zero positive value. It is in meters; so, for example, a value of '42000' means 42 km. The minimum allowed value is 0. The maximum allowed value is MAX_INT.- Parameters:
radius- The new value forradius.- Returns:
thisto mimic the builder pattern.
-
getOptions
public Map<String,String> getOptions()
Optional parameters.CREATE_TEMP_TABLE: IfTRUE, a unique temporary table name will be generated in the sys_temp schema and used in place ofviewName. This is always allowed even if the caller does not have permission to create tables. The generated name is returned inQUALIFIED_VIEW_NAME. Supported values: The default value isFALSE.COLLECTION_NAME: [DEPRECATED--please specify the containing schema for the view as part ofviewNameand useGPUdb.createSchemato create the schema if non-existent] Name of a schema which is to contain the newly created view. If the schema is non-existent, it will be automatically created.
Map.- Returns:
- The current value of
options.
-
setOptions
public FilterByRadiusRequest setOptions(Map<String,String> options)
Optional parameters.CREATE_TEMP_TABLE: IfTRUE, a unique temporary table name will be generated in the sys_temp schema and used in place ofviewName. This is always allowed even if the caller does not have permission to create tables. The generated name is returned inQUALIFIED_VIEW_NAME. Supported values: The default value isFALSE.COLLECTION_NAME: [DEPRECATED--please specify the containing schema for the view as part ofviewNameand useGPUdb.createSchemato create the schema if non-existent] Name of a schema which is to contain the newly created view. If the schema is non-existent, it will be automatically created.
Map.- Parameters:
options- The new value foroptions.- Returns:
thisto 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:
getSchemain interfaceorg.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:
getin interfaceorg.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:
putin interfaceorg.apache.avro.generic.IndexedRecord- Parameters:
index- the position of the field to setvalue- the value to set- Throws:
IndexOutOfBoundsException
-
-