Package com.ziclix.python.sql.util

Examples of com.ziclix.python.sql.util.PyArgParser


    @Override
    public PyObject __call__(PyObject[] args, String[] keywords) {
        Connection c = null;
        PyConnection pc = null;
        Object datasource = null;
        PyArgParser parser = new PyArgParser(args, keywords);

        try {
            String klass = (String) parser.arg(0).__tojava__(String.class);
            datasource = Class.forName(klass).newInstance();
        } catch (Exception e) {
            throw zxJDBC.makeException(zxJDBC.DatabaseError, "unable to instantiate datasource");
        }

        String[] kws = parser.kws();
        for (int i = 0; i < kws.length; i++) {
            String methodName = kws[i];

            if (methodName == null) {
                continue;
            }

            Object value = parser.kw(kws[i]).__tojava__(Object.class);
            if (methodName.length() > SET.length()) {
                if (!SET.equals(methodName.substring(0, SET.length()))) {
                    // prepend "set"
                    invoke(datasource, SET + methodName.substring(0, 1).toUpperCase()
                           + methodName.substring(1), value);
View Full Code Here


        Object ref = null;
        Connection connection = null;
        Hashtable<String, Object> env = new Hashtable<String, Object>();

        // figure out the correct params
        PyArgParser parser = new PyArgParser(args, keywords);
        Object jndiName = parser.arg(0).__tojava__(String.class);

        if ((jndiName == null) || (jndiName == Py.NoConversion)) {
            throw zxJDBC.makeException(zxJDBC.DatabaseError, "lookup name is null");
        }

        // add any Context properties
        String[] kws = parser.kws();

        for (int i = 0; i < kws.length; i++) {
            String keyword = kws[i], fieldname = null;
            Object value = parser.kw(keyword).__tojava__(Object.class);

            try {
                Field field = Context.class.getField(keyword);

                fieldname = (String) field.get(Context.class);
View Full Code Here

    }

    @Override
    public PyObject __call__(PyObject[] args, String[] keywords) {
        PyCursor cursor = (PyCursor)__self__;
        PyArgParser parser = new PyArgParser(args, keywords);
        PyObject sql = parser.arg(0);
        PyObject params = parser.kw("params", Py.None);
        PyObject bindings = parser.kw("bindings", Py.None);
        PyObject maxrows = parser.kw("maxrows", Py.None);

        params = parser.numArg() >= 2 ? parser.arg(1) : params;
        bindings = parser.numArg() >= 3 ? parser.arg(2) : bindings;
        maxrows = parser.numArg() >= 4 ? parser.arg(3) : maxrows;

        switch (index) {
        case 5 :
            cursor.execute(sql, params, bindings, maxrows);
            return Py.None;
View Full Code Here

    }

    @Override
    public PyObject __call__(PyObject[] args, String[] keywords) {
        PyConnection c = (PyConnection) __self__;
        PyArgParser parser = new PyArgParser(args, keywords);
        switch (index) {
            case 2:
                PyObject dynamic = parser.kw("dynamic", Py.None);
                PyObject rstype = parser.kw("rstype", Py.None);
                PyObject rsconcur = parser.kw("rsconcur", Py.None);

                dynamic = (parser.numArg() >= 1) ? parser.arg(0) : dynamic;
                rstype = (parser.numArg() >= 2) ? parser.arg(1) : rstype;
                rsconcur = (parser.numArg() >= 3) ? parser.arg(2) : rsconcur;

                return c.cursor(dynamic.__nonzero__(), rstype, rsconcur);

            default:
                throw info.unexpectedCall(args.length, true);
View Full Code Here

TOP

Related Classes of com.ziclix.python.sql.util.PyArgParser

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.