Class JepDynamicField

  • All Implemented Interfaces:
    DynamicField, ExportableField

    public class JepDynamicField
    extends Object
    implements DynamicField
    A dynamic field implementation that uses a JEP expression to generate the expression that is needed to select the data. One instance of this class is considered to be equal to another if they are configured with the same jep expression and title.
    Version:
    2.12
    Author:
    Nicklas
    Last modified
    $Date: 2010-08-13 12:48:17 +0200 (fr, 13 aug 2010) $
    • Constructor Detail

      • JepDynamicField

        public JepDynamicField()
        Create a new object. Before it can be used it must be configured.
    • Method Detail

      • getExpression

        public Expression getExpression​(DbControl dc,
                                        DynamicQuery query,
                                        BioAssaySet source,
                                        boolean forAverage)
        Converts the configured JEP expression using the BioAssaySetUtil.createJepExpression(DbControl, String, DynamicQuery) method. If 'forAverage' is TRUE the confgured Formula.AverageMethod is allowed to transform the expression. If no average method has been configured the average method specified by the IntensityTransform from the 'source' bioassay set is used.
        Specified by:
        getExpression in interface DynamicField
        Parameters:
        dc - The DbControl that is used for database access
        query - The query the expression will be used with
        source - The source bioassay set
        forAverage - TRUE if the expression should generate an average of multiple values
        Returns:
        An expression, or null if it is not possible to create an expression in the given case (this will normally be replaced with an empty column in the output)
      • getType

        public Type getType()
        Description copied from interface: ExportableField
        Get the data type of the field.
        Specified by:
        getType in interface ExportableField
        Returns:
        A type object or null if not known
      • getFormatter

        public Formatter<?> getFormatter()
        Description copied from interface: ExportableField
        Get a formatter that converts the values in this field to strings.
        Specified by:
        getFormatter in interface ExportableField
        Returns:
        A formatter or null to use default formatting (normally this means calling the toString() method).
      • equals

        public boolean equals​(Object obj)
        A jep dynamic field is equal to another field if it uses the same jep expression and has the same title.
        Overrides:
        equals in class Object
        Since:
        2.15
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
        Since:
        2.15
      • getJep

        public String getJep()
        Get the configured JEP expression.
      • setTitle

        public void setTitle​(String title)
        Set the column header title.
      • setType

        public void setType​(Type type)
        Set the data type of the exported field.
        Since:
        2.15
      • getAverageMethod

        public Formula.AverageMethod getAverageMethod()
        Get the average method to use if the exporter is exporting averaged data. If no average method has been configured, the everage method specified by the IntensityTransform of the source bioassay set is used.
      • setAverageMethod

        public void setAverageMethod​(Formula.AverageMethod averageMethod)
        Set the average method to use when exporting averaged data.
      • setFormatter

        public void setFormatter​(Formatter<?> formatter)
        Set a formatter to use for formatting the exported values.