Class FBEscapedFunctionHelper

    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.lang.String abs​(java.lang.String[] params)
      Produce a function call for the abs UDF function.
      static java.lang.String acos​(java.lang.String[] params)
      Produce a function call for the acos UDF function.
      static java.lang.String asin​(java.lang.String[] params)
      Produce a function call for the asin UDF function.
      static java.lang.String atan​(java.lang.String[] params)
      Produce a function call for the atan UDF function.
      static java.lang.String atan2​(java.lang.String[] params)
      Produce a function call for the atan2 UDF function.
      static java.lang.String ceiling​(java.lang.String[] params)
      Produce a function call for the ceiling UDF function.
      static java.lang.String convertTemplate​(java.lang.String functionCall, FBEscapedParser.EscapeParserMode mode)
      Convert escaped function call using function template.
      static java.lang.String cos​(java.lang.String[] params)
      Produce a function call for the cos UDF function.
      static java.lang.String cot​(java.lang.String[] params)
      Produce a function call for the cot UDF function.
      static java.lang.String floor​(java.lang.String[] params)
      Produce a function call for the floor UDF function.
      static java.util.Set<java.lang.String> getSupportedNumericFunctions()  
      static java.util.Set<java.lang.String> getSupportedStringFunctions()  
      static java.util.Set<java.lang.String> getSupportedSystemFunctions()  
      static java.util.Set<java.lang.String> getSupportedTimeDateFunctions()  
      static java.lang.String log10​(java.lang.String[] params)
      Produce a function call for the log10 UDF function.
      static java.lang.String mod​(java.lang.String[] params)
      Produce a function call for the mod UDF function.
      static java.util.List<java.lang.String> parseArguments​(java.lang.String functionCall)
      Extract function arguments from the function call.
      static java.lang.String parseFunction​(java.lang.String functionCall)
      Extract function name from the function call.
      static java.lang.String pi​(java.lang.String[] params)
      Produce a function call for the pi UDF function.
      static java.lang.String rand​(java.lang.String[] params)
      Produce a function call for the rand UDF function.
      static java.lang.String sign​(java.lang.String[] params)
      Produce a function call for the sign UDF function.
      static java.lang.String sin​(java.lang.String[] params)
      Produce a function call for the sin UDF function.
      static java.lang.String sqrt​(java.lang.String[] params)
      Produce a function call for the sqrt UDF function.
      static java.lang.String tan​(java.lang.String[] params)
      Produce a function call for the tan UDF function.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • FBEscapedFunctionHelper

        public FBEscapedFunctionHelper()
    • Method Detail

      • parseFunction

        public static java.lang.String parseFunction​(java.lang.String functionCall)
                                              throws FBSQLParseException
        Extract function name from the function call.
        Parameters:
        functionCall - escaped function call.
        Returns:
        name of the function.
        Throws:
        FBSQLParseException - if parse error occurs.
      • parseArguments

        public static java.util.List<java.lang.String> parseArguments​(java.lang.String functionCall)
                                                               throws FBSQLParseException
        Extract function arguments from the function call. This method parses escaped function call string and extracts function parameters from it.
        Parameters:
        functionCall - escaped function call.
        Returns:
        list of parameters of the function.
        Throws:
        FBSQLParseException - if parse error occurs.
      • convertTemplate

        public static java.lang.String convertTemplate​(java.lang.String functionCall,
                                                       FBEscapedParser.EscapeParserMode mode)
                                                throws FBSQLParseException
        Convert escaped function call using function template.
        Parameters:
        functionCall - escaped function call.
        Returns:
        server-side representation of the function call or null if no template found.
        Throws:
        FBSQLParseException - if escaped function call has incorrect syntax.
      • abs

        public static java.lang.String abs​(java.lang.String[] params)
                                    throws FBSQLParseException
        Produce a function call for the abs UDF function. The syntax of the abs function is {fn abs(number)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • acos

        public static java.lang.String acos​(java.lang.String[] params)
                                     throws FBSQLParseException
        Produce a function call for the acos UDF function. The syntax of the acos function is {fn acos(float)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • asin

        public static java.lang.String asin​(java.lang.String[] params)
                                     throws FBSQLParseException
        Produce a function call for the asin UDF function. The syntax of the asin function is {fn asin(float)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • atan

        public static java.lang.String atan​(java.lang.String[] params)
                                     throws FBSQLParseException
        Produce a function call for the atan UDF function. The syntax of the atan function is {fn atan(float)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • atan2

        public static java.lang.String atan2​(java.lang.String[] params)
                                      throws FBSQLParseException
        Produce a function call for the atan2 UDF function. The syntax of the atan2 function is {fn atan2(float1, float2)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • ceiling

        public static java.lang.String ceiling​(java.lang.String[] params)
                                        throws FBSQLParseException
        Produce a function call for the ceiling UDF function. The syntax of the ceiling function is {fn ceiling(number)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • cos

        public static java.lang.String cos​(java.lang.String[] params)
                                    throws FBSQLParseException
        Produce a function call for the cos UDF function. The syntax of the cos function is {fn cos(float)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • cot

        public static java.lang.String cot​(java.lang.String[] params)
                                    throws FBSQLParseException
        Produce a function call for the cot UDF function. The syntax of the cot function is {fn cot(float)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • floor

        public static java.lang.String floor​(java.lang.String[] params)
                                      throws FBSQLParseException
        Produce a function call for the floor UDF function. The syntax of the floor function is {fn floor(number)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • log10

        public static java.lang.String log10​(java.lang.String[] params)
                                      throws FBSQLParseException
        Produce a function call for the log10 UDF function. The syntax of the log10 function is {fn log10(number)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • mod

        public static java.lang.String mod​(java.lang.String[] params)
                                    throws FBSQLParseException
        Produce a function call for the mod UDF function. The syntax of the mod function is {fn mod(integer1, integer2)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • pi

        public static java.lang.String pi​(java.lang.String[] params)
                                   throws FBSQLParseException
        Produce a function call for the pi UDF function. The syntax of the pi function is {fn pi()}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • rand

        public static java.lang.String rand​(java.lang.String[] params)
                                     throws FBSQLParseException
        Produce a function call for the rand UDF function. The syntax for the rand function is {fn rand()}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • sign

        public static java.lang.String sign​(java.lang.String[] params)
                                     throws FBSQLParseException
        Produce a function call for the sign UDF function. The syntax for the sign function is {fn sign(number)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • sin

        public static java.lang.String sin​(java.lang.String[] params)
                                    throws FBSQLParseException
        Produce a function call for the sin UDF function. The syntax for the sin function is {fn sin(float)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • sqrt

        public static java.lang.String sqrt​(java.lang.String[] params)
                                     throws FBSQLParseException
        Produce a function call for the sqrt UDF function. The syntax for the sqrt function is {fn sqrt(number)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • tan

        public static java.lang.String tan​(java.lang.String[] params)
                                    throws FBSQLParseException
        Produce a function call for the tan UDF function. The syntax for the tan function is {fn tan(float)}.
        Parameters:
        params - The parameters to be used in the call
        Throws:
        FBSQLParseException - if there is an error with the parameters
      • getSupportedNumericFunctions

        public static java.util.Set<java.lang.String> getSupportedNumericFunctions()
        Returns:
        Set of JDBC numeric functions supported (as defined in appendix D.1 of JDBC 4.1)
      • getSupportedStringFunctions

        public static java.util.Set<java.lang.String> getSupportedStringFunctions()
        Returns:
        Set of JDBC string functions supported (as defined in appendix D.2 of JDBC 4.1)
      • getSupportedTimeDateFunctions

        public static java.util.Set<java.lang.String> getSupportedTimeDateFunctions()
        Returns:
        Set of JDBC time and date functions supported (as defined in appendix D.3 of JDBC 4.1)
      • getSupportedSystemFunctions

        public static java.util.Set<java.lang.String> getSupportedSystemFunctions()
        Returns:
        Set of JDBC system functions supported (as defined in appendix D.4 of JDBC 4.1)