Class Point2DColumn

    • Constructor Detail

      • Point2DColumn

        public Point2DColumn​(RowDefinition row,
                             DBPoint2D field)
        Creates a portable reference to the column represented by the field of the row.
        Parameters:
        row - the table defining object the contains the field
        field - the field that defines the column.
      • Point2DColumn

        public Point2DColumn​(RowDefinition row,
                             com.vividsolutions.jts.geom.Point field)
    • Method Detail

      • setUseTableAlias

        public void setUseTableAlias​(boolean useTableAlias)
        Description copied from interface: ColumnProvider
        Indicates whether the ColumnProvider should use the table alias during query creation.

        the standard implementation is this.column.setUseTableAlias(useTableAlias); and passes the boolean along to the underlying AbstractColumn

        Specified by:
        setUseTableAlias in interface ColumnProvider
        Parameters:
        useTableAlias - true or false
      • toSQLString

        public String toSQLString​(DBDefinition db)
        Description copied from interface: HasSQLString
        Produces the snippet provided by this class.

        This is only used internally.

        If you are extending DBvolution and adding a new function this is the place to format the information for use in SQL. A DBDefinition instance is provided to supply context and so your SQL can used on multiple database engines.

        Specified by:
        toSQLString in interface HasSQLString
        Overrides:
        toSQLString in class AnyExpression<com.vividsolutions.jts.geom.Point,Point2DResult,DBPoint2D>
        Parameters:
        db - the target database

        Support DBvolution at Patreon

        Returns:
        the DBValue formatted as a SQL snippet
      • isPurelyFunctional

        public boolean isPurelyFunctional()
        Description copied from interface: DBExpression
        Indicates whether or not the expression includes table columns.

        Purely functional expressions use only in-built functions or literal values to produce results and do not require data from tables.

        Some databases, notably MS SQLServer, can not group purely functional expressions.

        Support DBvolution at Patreon

        Specified by:
        isPurelyFunctional in interface DBExpression
        Overrides:
        isPurelyFunctional in class AnyExpression<com.vividsolutions.jts.geom.Point,Point2DResult,DBPoint2D>
        Returns:
        TRUE if the expression does not access table data, otherwise FALSE.
      • isAggregator

        public boolean isAggregator()
        Description copied from interface: DBExpression
        Returns TRUE if this expression is an Aggregator like SUM() or LEAST().

        Subclasses must implement this method returning TRUE if the expression will combine the results of several rows to produce a result. If the expression relies on subexpressions, then the isAggregator method must return TRUE if the subexpressions include an aggregator.

        Aggregators collect several rows together to produce a single result. Examples are MAX, MIN, and AVERAGE.

        They are only appropriate in the SELECT clause and generally require the GROUP BY clause to be useful.

        Aggregators are used with DBReport. Aggregator expressions are included in the SELECT clause but excluded from the GROUP BY clause.

        Support DBvolution at Patreon

        Specified by:
        isAggregator in interface DBExpression
        Overrides:
        isAggregator in class AnyExpression<com.vividsolutions.jts.geom.Point,Point2DResult,DBPoint2D>
        Returns:
        TRUE if this DBExpression represents an aggregating functions
      • copy

        public Point2DColumn copy()
        Description copied from interface: DBExpression
        A Complete Copy Of This DBValue.

        Immutability in DBvolution is maintain by internally copying objects.

        This method enables immutability by performing a deep copy of the object.

        Singletons may return themselves but all other objects must return a new instance with copies of all mutable fields.

        Support DBvolution at Patreon

        Specified by:
        copy in interface DBExpression
        Overrides:
        copy in class Point2DExpression
        Returns:
        a copy of this DBValue