Class ReporterPropertyExpression

    • Field Detail

      • propertyToColumn

        private static volatile Map<String,​String> propertyToColumn
      • property

        private final String property
      • column

        private final String column
      • useCloned

        private final Boolean useCloned
    • Constructor Detail

      • ReporterPropertyExpression

        public ReporterPropertyExpression​(String property)
                                   throws InvalidDataException
        Create a new reporter property expression. The expression automatically selects if cloned reporter information should be used or not.
        Parameters:
        property - The name of the property
        Throws:
        InvalidDataException
      • ReporterPropertyExpression

        public ReporterPropertyExpression​(String property,
                                          Boolean useCloned)
        Create a new reporter property expression. The expression may be forced to use either the cloned or master reporter information.
        Parameters:
        property - The name of the property
        useCloned - TRUE to use cloned reporter information (if available), FALSE to not use cloned information, null to automatically decide
        Since:
        3.1
    • Method Detail

      • toQl

        public String toQl​(Query query,
                           DbControl dc)
                    throws BaseException
        Description copied from interface: QueryElement
        Create a query language string of the query element. Use the Query.getQueryType() method to find out which query language is wanted in case the element requires different syntax for different languages.
        Specified by:
        toQl in interface QueryElement
        Parameters:
        query - The query that is about to be executed
        dc - The DbControl object used to execute the query
        Throws:
        BaseException - If there is any other error
      • equals

        public boolean equals​(Object other)
        This expression is equal to another ReporterPropertyExpression if they represent the same reporter property.
        Overrides:
        equals in class Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • useCloned

        public boolean useCloned​(ClonableReporterQuery query)
        Check if this reporter property should use the cloned reporter for the given query or not. If the query is using a virtual database that doesn't have cloned reporters, FALSE is returned. Othersise, if an explicit request has been made to use/not use cloned reporters, that value is returned. If no explicit request has been made, the outcome depends on the DynamicQuery.useClonedReporters().
        Parameters:
        query - The query to check with
        Returns:
        TRUE if the cloned reporter table should be used, FALSE if not
        Since:
        3.1
      • getColumn

        private static String getColumn​(String property)