Class QueryPlus


  • public class QueryPlus
    extends Object
    QueryPlus implements a simple command line processor for a sql like language.
    Author:
    djl 2009.08.31, jk 2014.01.02
    • Constructor Detail

      • QueryPlus

        public QueryPlus​(QueryPlus.Dependencies dependencies)
        Create a QueryPlus instance that uses the specified QueryPlus.Dependencies.
        Parameters:
        dependencies - the Dependencies that will control the QueryPlus session
    • Method Detail

      • run

        public void run()
        Run this instance of QueryPlus.
      • repl

        public void repl()
        Start a statement processing loop.
      • addStatement

        protected void addStatement​(AbstractQueryPlusStatementBuilder builder)
        Add a new QueryPlus statement.
        Parameters:
        builder - the statement builder to add
      • addAlterSessionStatement

        protected void addAlterSessionStatement()
        Add the QueryPlus ALTER SESSION statements
      • query

        protected Object query​(String sQuery)
        Process the specified query.
        Parameters:
        sQuery - a String that represents the query
        Returns:
        the results of the query
      • processFile

        protected boolean processFile​(String sFileName)
        Process the given file of CohQL statements.
        Parameters:
        sFileName - the name of the file CohQL containing the statements to execute
        Returns:
        true if all statements in the file were processed or false if an error occurred
      • evalLine

        protected boolean evalLine​(String sLine)
        Evaluate the given CohQL statement.
        Parameters:
        sLine - the CohQL statement String to be evaluated
        Returns:
        a flag indicating whether to continue processing statements
      • getJlineReader

        public static BufferedReader getJlineReader​(OutputStream output,
                                                    InputStream input,
                                                    boolean fSilent)
        Return an instance of BufferedReader if JLine is present.
        Parameters:
        output - the OutputStream that will provide output
        input - the InputStream that will provide input
        fSilent - if true no message will be displayed if JLine is unavailable.
        Returns:
        an instance of BufferedReader or null
      • main

        public static void main​(String[] asArgs)
        The main application for CohQL statement processing.
        Parameters:
        asArgs - an array of Strings that represents arguments