Search in sources :

Example 61 with Query

use of lucee.runtime.type.Query in project Lucee by lucee.

the class TaskFileFilter method createQuery.

private Query createQuery() throws DatabaseException {
    String v = "VARCHAR";
    String d = "DATE";
    lucee.runtime.type.Query qry = new QueryImpl(new String[] { "type", "name", "detail", "id", "lastExecution", "nextExecution", "closed", "tries", "exceptions", "triesmax" }, new String[] { v, v, "object", v, d, d, "boolean", "int", "object", "int" }, 0, "query");
    return qry;
}
Also used : QueryImpl(lucee.runtime.type.QueryImpl) Query(lucee.runtime.type.Query)

Example 62 with Query

use of lucee.runtime.type.Query in project Lucee by lucee.

the class TaskFileFilter method getAllTasksAsQuery.

@Override
public Query getAllTasksAsQuery(int startrow, int maxrow) throws PageException {
    Query query = createQuery();
    // print.o(startrow+":"+maxrow);
    getTasksAsQuery(query, openDirectory, startrow, maxrow);
    int records = query.getRecordcount();
    if (maxrow < 0)
        maxrow = Integer.MAX_VALUE;
    // no open tasks
    if (records == 0) {
        startrow -= getOpenTaskCount();
        if (startrow < 1)
            startrow = 1;
    } else {
        startrow = 1;
        maxrow -= records;
    }
    if (maxrow > 0)
        getTasksAsQuery(query, closedDirectory, startrow, maxrow);
    return query;
}
Also used : Query(lucee.runtime.type.Query)

Example 63 with Query

use of lucee.runtime.type.Query in project Lucee by lucee.

the class JSONConverter method _serialize.

/**
 * serialize a Object to his xml Format represenation
 * @param object Object to serialize
 * @param sb StringBuilder to write data
 * @param serializeQueryByColumns
 * @param done
 * @throws ConverterException
 */
private void _serialize(PageContext pc, Set test, Object object, StringBuilder sb, boolean serializeQueryByColumns, Set done) throws ConverterException {
    // NULL
    if (object == null || object == NULL) {
        sb.append(goIn());
        sb.append("null");
        return;
    }
    // String
    if (object instanceof String || object instanceof StringBuilder) {
        sb.append(goIn());
        sb.append(StringUtil.escapeJS(object.toString(), '"', charsetEncoder));
        return;
    }
    // Character
    if (object instanceof Character) {
        sb.append(goIn());
        sb.append(StringUtil.escapeJS(String.valueOf(((Character) object).charValue()), '"', charsetEncoder));
        return;
    }
    // Number
    if (object instanceof Number) {
        sb.append(goIn());
        sb.append(Caster.toString(((Number) object)));
        return;
    }
    // Boolean
    if (object instanceof Boolean) {
        sb.append(goIn());
        sb.append(Caster.toString(((Boolean) object).booleanValue()));
        return;
    }
    // DateTime
    if (object instanceof DateTime) {
        _serializeDateTime((DateTime) object, sb);
        return;
    }
    // Date
    if (object instanceof Date) {
        _serializeDate((Date) object, sb);
        return;
    }
    // XML
    if (object instanceof Node) {
        _serializeXML((Node) object, sb);
        return;
    }
    // Timespan
    if (object instanceof TimeSpan) {
        _serializeTimeSpan((TimeSpan) object, sb);
        return;
    }
    // File
    if (object instanceof File) {
        _serialize(pc, test, ((File) object).getAbsolutePath(), sb, serializeQueryByColumns, done);
        return;
    }
    // String Converter
    if (object instanceof ScriptConvertable) {
        sb.append(((ScriptConvertable) object).serialize());
        return;
    }
    // byte[]
    if (object instanceof byte[]) {
        sb.append("\"" + Base64Coder.encode((byte[]) object) + "\"");
        return;
    }
    Object raw = LazyConverter.toRaw(object);
    if (done.contains(raw)) {
        sb.append(goIn());
        sb.append("null");
        return;
    }
    done.add(raw);
    try {
        // Component
        if (object instanceof Component) {
            _serializeComponent(pc, test, (Component) object, sb, serializeQueryByColumns, done);
            return;
        }
        // UDF
        if (object instanceof UDF) {
            _serializeUDF(pc, test, (UDF) object, sb, serializeQueryByColumns, done);
            return;
        }
        // Struct
        if (object instanceof Struct) {
            _serializeStruct(pc, test, (Struct) object, sb, serializeQueryByColumns, true, done);
            return;
        }
        // Map
        if (object instanceof Map) {
            _serializeMap(pc, test, (Map) object, sb, serializeQueryByColumns, done);
            return;
        }
        // Array
        if (object instanceof Array) {
            _serializeArray(pc, test, (Array) object, sb, serializeQueryByColumns, done);
            return;
        }
        // List
        if (object instanceof List) {
            _serializeList(pc, test, (List) object, sb, serializeQueryByColumns, done);
            return;
        }
        // Query
        if (object instanceof Query) {
            _serializeQuery(pc, test, (Query) object, sb, serializeQueryByColumns, done);
            return;
        }
        // Native Array
        if (Decision.isNativeArray(object)) {
            if (object instanceof char[])
                _serialize(pc, test, new String((char[]) object), sb, serializeQueryByColumns, done);
            else {
                _serializeArray(pc, test, ArrayUtil.toReferenceType(object, ArrayUtil.OBJECT_EMPTY), sb, serializeQueryByColumns, done);
            }
            return;
        }
        // ObjectWrap
        if (object instanceof ObjectWrap) {
            try {
                _serialize(pc, test, ((ObjectWrap) object).getEmbededObject(), sb, serializeQueryByColumns, done);
            } catch (PageException e) {
                if (object instanceof JavaObject) {
                    _serializeClass(pc, test, ((JavaObject) object).getClazz(), null, sb, serializeQueryByColumns, done);
                } else
                    throw new ConverterException("can't serialize Object of type [ " + Caster.toClassName(object) + " ]");
            }
            return;
        }
        _serializeClass(pc, test, object.getClass(), object, sb, serializeQueryByColumns, done);
    } finally {
        done.remove(raw);
    }
}
Also used : PageException(lucee.runtime.exp.PageException) ObjectWrap(lucee.runtime.type.ObjectWrap) Query(lucee.runtime.type.Query) Node(org.w3c.dom.Node) DateTime(lucee.runtime.type.dt.DateTime) Date(java.util.Date) Struct(lucee.runtime.type.Struct) TimeSpan(lucee.runtime.type.dt.TimeSpan) Array(lucee.runtime.type.Array) JavaObject(lucee.runtime.java.JavaObject) UDF(lucee.runtime.type.UDF) JavaObject(lucee.runtime.java.JavaObject) List(java.util.List) Component(lucee.runtime.Component) File(java.io.File) Map(java.util.Map)

Example 64 with Query

use of lucee.runtime.type.Query in project Lucee by lucee.

the class RHExtension method toQuery.

public static Query toQuery(Config config, RHExtension[] children) throws PageException {
    Log log = config.getLog("deploy");
    Query qry = createQuery();
    for (int i = 0; i < children.length; i++) {
        try {
            // ,i+1
            children[i].populate(qry);
        } catch (Throwable t) {
            ExceptionUtil.rethrowIfNecessary(t);
            log.error("extension", t);
        }
    }
    return qry;
}
Also used : Query(lucee.runtime.type.Query) Log(lucee.commons.io.log.Log)

Example 65 with Query

use of lucee.runtime.type.Query in project Lucee by lucee.

the class RHExtension method populate.

private void populate(Query qry) throws PageException, IOException, BundleException {
    int row = qry.addRow();
    qry.setAt(KeyConstants._id, row, getId());
    qry.setAt(KeyConstants._name, row, name);
    qry.setAt(KeyConstants._image, row, getImage());
    qry.setAt(KeyConstants._description, row, description);
    qry.setAt(KeyConstants._version, row, getVersion() == null ? null : getVersion().toString());
    qry.setAt(TRIAL, row, isTrial());
    qry.setAt(RELEASE_TYPE, row, toReleaseType(getReleaseType(), "all"));
    // qry.setAt(JARS, row,Caster.toArray(getJars()));
    qry.setAt(FLDS, row, Caster.toArray(getFlds()));
    qry.setAt(TLDS, row, Caster.toArray(getTlds()));
    qry.setAt(FUNCTIONS, row, Caster.toArray(getFunctions()));
    qry.setAt(ARCHIVES, row, Caster.toArray(getArchives()));
    qry.setAt(TAGS, row, Caster.toArray(getTags()));
    qry.setAt(CONTEXTS, row, Caster.toArray(getContexts()));
    qry.setAt(WEBCONTEXTS, row, Caster.toArray(getWebContexts()));
    qry.setAt(CONFIG, row, Caster.toArray(getConfigs()));
    qry.setAt(EVENT_GATEWAYS, row, Caster.toArray(getEventGateways()));
    qry.setAt(CATEGORIES, row, Caster.toArray(getCategories()));
    qry.setAt(APPLICATIONS, row, Caster.toArray(getApplications()));
    qry.setAt(COMPONENTS, row, Caster.toArray(getComponents()));
    qry.setAt(PLUGINS, row, Caster.toArray(getPlugins()));
    qry.setAt(START_BUNDLES, row, Caster.toBoolean(getStartBundles()));
    BundleInfo[] bfs = getBundles();
    Query qryBundles = new QueryImpl(new Key[] { KeyConstants._name, KeyConstants._version }, bfs.length, "bundles");
    for (int i = 0; i < bfs.length; i++) {
        qryBundles.setAt(KeyConstants._name, i + 1, bfs[i].getSymbolicName());
        if (bfs[i].getVersion() != null)
            qryBundles.setAt(KeyConstants._version, i + 1, bfs[i].getVersionAsString());
    }
    qry.setAt(BUNDLES, row, qryBundles);
}
Also used : QueryImpl(lucee.runtime.type.QueryImpl) BundleInfo(lucee.runtime.osgi.BundleInfo) Query(lucee.runtime.type.Query)

Aggregations

Query (lucee.runtime.type.Query)82 QueryImpl (lucee.runtime.type.QueryImpl)52 Struct (lucee.runtime.type.Struct)19 Array (lucee.runtime.type.Array)16 Collection (lucee.runtime.type.Collection)14 Iterator (java.util.Iterator)13 PageException (lucee.runtime.exp.PageException)12 Map (java.util.Map)11 StructImpl (lucee.runtime.type.StructImpl)11 ApplicationException (lucee.runtime.exp.ApplicationException)10 Stopwatch (lucee.runtime.timer.Stopwatch)10 Key (lucee.runtime.type.Collection.Key)9 List (java.util.List)8 IOException (java.io.IOException)7 ArrayList (java.util.ArrayList)7 HashMap (java.util.HashMap)7 QueryColumn (lucee.runtime.type.QueryColumn)7 Enumeration (java.util.Enumeration)6 Entry (java.util.Map.Entry)6 FunctionException (lucee.runtime.exp.FunctionException)6