コード例 #1
0
StatsVirtualServerNode::StatsVirtualServerNode(const VirtualServer* vs,
                                               int nProfileBucketsCount):
                                               wms(NULL),
                                               next(NULL),
                                               profile(NULL)
{
    nProfileBucketsCount_ = nProfileBucketsCount;
    if (nProfileBucketsCount > 0)
    {
        profile = new StatsProfileNode[nProfileBucketsCount];
        statsMakeListFromArray(profile, nProfileBucketsCount);
    }
    memset(&vssStats, 0, sizeof(vssStats));
    vssStats.mode = STATS_VIRTUALSERVER_ACTIVE;

    int nVsIdLen = sizeof(vssStats.id);
    if (vs)
    {
        strncpy(vssStats.id, vs->name, (nVsIdLen - 1));
        vssStats.id[nVsIdLen - 1] = 0;
    }
    else
    {
        memset(vssStats.id, 0, nVsIdLen);
    }
    if (vs)
    {
        setHostNames(vs);
        setInterfaces(vs);
    }
    return;
}
コード例 #2
0
void ConnectionManager::Private::ProtocolWrapper::extractMainProperties(const QVariantMap &props)
{
    mHasMainProps =
        props.contains(TP_QT_IFACE_PROTOCOL + QLatin1String(".Interfaces")) &&
        props.contains(TP_QT_IFACE_PROTOCOL + QLatin1String(".Parameters")) &&
        props.contains(TP_QT_IFACE_PROTOCOL + QLatin1String(".ConnectionInterfaces")) &&
        props.contains(TP_QT_IFACE_PROTOCOL + QLatin1String(".RequestableChannelClasses")) &&
        props.contains(TP_QT_IFACE_PROTOCOL + QLatin1String(".VCardField")) &&
        props.contains(TP_QT_IFACE_PROTOCOL + QLatin1String(".EnglishName")) &&
        props.contains(TP_QT_IFACE_PROTOCOL + QLatin1String(".Icon"));

    setInterfaces(qdbus_cast<QStringList>(
                props[TP_QT_IFACE_PROTOCOL + QLatin1String(".Interfaces")]));
    mReadinessHelper->setInterfaces(interfaces());

    ParamSpecList parameters = qdbus_cast<ParamSpecList>(
            props[TP_QT_IFACE_PROTOCOL + QLatin1String(".Parameters")]);
    foreach (const ParamSpec &spec, parameters) {
        mInfo.addParameter(spec);
    }