Beispiel #1
0
Options PipelineReaderJSON::extractOptions(Json::Value& node)
{
    Options options;

    for (const std::string& name : node.getMemberNames())
    {
        Json::Value& subnode(node[name]);

        if (name == "plugin")
        {
            PluginManager<Stage>::loadPlugin(subnode.asString());

            // Don't actually put a "plugin" option on
            // any stage
            continue;
        }

        if (extractOption(options, name, subnode))
            continue;
        else if (subnode.isArray())
        {
            for (const Json::Value& val : subnode)
                if (!extractOption(options, name, val))
                    throw pdal_error("JSON pipeline: Invalid value type for "
                        "option list '" + name + "'.");
        }
        else if (subnode.isObject())
        {
            Json::FastWriter w;
            options.add(name, w.write(subnode));
        }
        else
            throw pdal_error("JSON pipeline: Value of stage option '" +
                name + "' cannot be converted.");
    }
    node.clear();
    return options;
}
Beispiel #2
0
QByteArray LSHttpdRequest::extractDigest(QByteArray headerValue)
{
    return extractOption(headerValue,"response");
}
Beispiel #3
0
QByteArray LSHttpdRequest::extractUser(QByteArray headerValue)
{
    return extractOption(headerValue,"username");
}