Interface IsEmptyPlugin

  • All Superinterfaces:
    Modifiers
    All Known Implementing Classes:
    DefaultSqlPlugins

    public interface IsEmptyPlugin
    extends Modifiers
    The SQL Processor plugin devoted to evaluate the emptiness of the input value.

    The emptiness is the basic facility in the construction of the final SQL statements from the META SQL fragments.

    The standard evaluation is the next one:

    The non-emptiness of a dynamic input value depends on the Java type of the related attribute

    • for a String it must be not null and the length must be >0
    • for a Collection it must be not null and the size must be >0
    • for the rest Java types it must be not null
    • an enumeration based attribute is treated in a special way, please see the advanced tutorial
    Author:
    Vladimir Hudec
    • Method Detail

      • isNotEmpty

        boolean isNotEmpty​(SqlRuntimeContext runtimeCtx,
                           String attributeName,
                           Object obj,
                           Object parentObj,
                           SqlMetaType sqlMetaType,
                           String inOutModifier,
                           boolean inSqlSetOrInsert,
                           Map<String,​String> values)
                    throws IllegalArgumentException
        Used for the evaluation of the emptiness in the META SQL fragments.
        Parameters:
        runtimeCtx - the public runtime context
        attributeName - the name of the input value
        obj - the input value
        parentObj - the parent of the input value
        sqlMetaType - the internal type (= META type) devoted for the special processing of the input values
        inOutModifier - the input/output value modifier devoted to extend the processing of the input/output values
        inSqlSetOrInsert - an indicator the input value is evaluated in the CRUD statement (INSERT or SET)
        values - values for a special identifier handling, for example a sequence for an identity
        Returns:
        the non-emptiness of the input value
        Throws:
        IllegalArgumentException