亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ctpconfig.cpp

?? funambol windows mobile plugin source code, the source code is taken from the funambol site
?? CPP
字號:
/*
 * Copyright (C) 2003-2007 Funambol, Inc
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY, TITLE, NONINFRINGEMENT or FITNESS FOR A PARTICULAR
 * PURPOSE.  See the GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
 * 02111-1307  USA
 */
    
#include "CTPConfig.h"     

#define CTP_QUEUE_PUSH      "queuePush"
#define CTP_RETRY           "ctpRetry"
#define CTP_MAX_RETRY_TIMEOUT "maxCtpRetry"
#define CTP_CMD_TIMEOUT     "ctpCmdTimeout"
#define CTP_CONN_TIMEOUT    "ctpConnTimeout"
#define CTP_PORT            "ctpPort"
#define CTP_NONCE           "ctpNonce"
#define CTP_READY           "ctpReady"



CTPConfig::CTPConfig(const char* application_uri)
                    : DMTClientConfig(application_uri) {
    leavingState = false;
}
        
CTPConfig::~CTPConfig() {}

        
void CTPConfig::readCTPConfig() {

    if (!open()) {
        LOG.error("Impossible read the ctp configuration. exit");
        return;
    }

    if (readAccessConfig(*syncMLNode)) {
        setUsername(accessConfig.getUsername());
        setUrlTo(getHostName(accessConfig.getSyncURL()));        
    }
    if (readDeviceConfig(*syncMLNode)) {
        setDeviceId(deviceConfig.getDevID());

    }
    
    // now read the single CTP properties
    ManagementNode* node;

    // read parameter of the client only
    node = dmt->readManagementNode(rootContext);
    if (node) {
        char* tmp;        
        tmp = node->readPropertyValue(PROPERTY_PUSH_NOTIFICATION);
        if (tmp) {
            setPush(atoi(tmp));
        } else {
            setPush(0);
        }        
        delete [] tmp;
             
        tmp = node->readPropertyValue(PROPERTY_POLLING_NOTIFICATION);
        if (tmp) {
            setPolling(atoi(tmp));
        } else {
            setPolling(0);
        }                
        delete [] tmp;

        tmp = node->readPropertyValue(CTP_QUEUE_PUSH);
        if (tmp) {
            setQueuePush(atoi(tmp) == 0 ? false : true);
        } else {
            setQueuePush(false);
        }                
        delete [] tmp;

        tmp = node->readPropertyValue(CTP_RETRY);
        if (tmp) {
            setCtpRetry(atoi(tmp));
        } else {
            setCtpRetry(5);
        }                
        delete [] tmp;

        tmp = node->readPropertyValue(CTP_MAX_RETRY_TIMEOUT);
        if (tmp) {
            setMaxCtpRetry(atoi(tmp));
        } else {
            setMaxCtpRetry(900); // 15 min
        }                
        delete [] tmp;

        tmp = node->readPropertyValue(CTP_CMD_TIMEOUT);
        if (tmp) {
            setCtpCmdTimeout(atoi(tmp));
        } else {
            setCtpCmdTimeout(0); 
        }                
        delete [] tmp;

        tmp = node->readPropertyValue(CTP_CONN_TIMEOUT);
        if (tmp) {
            setCtpConnTimeout(atoi(tmp));
        } else {
            setCtpConnTimeout(0); 
        }                
        delete [] tmp;

        tmp = node->readPropertyValue(CTP_PORT);
        if (tmp) {
            setCtpPort(atoi(tmp));
        } else {
            setCtpPort(0); 
        }                
        delete [] tmp;

        tmp = node->readPropertyValue(CTP_NONCE);
        if (tmp) {
            setCtpNonce(tmp);
        } else {
            setCtpNonce(""); 
        }                
        delete [] tmp;
        
        tmp = node->readPropertyValue(CTP_READY);
        if (tmp) {
            setCtpReady(atoi(tmp));
        } else {
            setCtpReady(5);
        }                
        delete [] tmp;

        delete node;
        node = NULL;
    }
    
    close();
    return;

}


void CTPConfig::saveCTPConfig() {
    ManagementNode* node;    

    if (!open()) {
        return;
    }
  
    node = dmt->readManagementNode(rootContext);
    if (node) {
        node->setPropertyValue(CTP_NONCE, getCtpNonce().c_str());        
        delete node;
        node = NULL;
    }

    close();
}
                      

string CTPConfig::getHostName(string syncUrl) {

    std::string::size_type start, end;
    std::string host;
    // Extract the hostName from syncUrl: "http://<hostName>:8080/funambol/ds"    
    start = syncUrl.find("://", 0);
    if (start != std::string::npos) {
        start += 3;
    } else {
        // try to extract hostname from <hostName>:8080/funambol/ds"  
        start = 0;
    }
    
    end = syncUrl.find_first_of(":/", start);       // stop if ":" or "/" found
    if (end == std::string::npos) { // so the url is only <hostName>
        end = syncUrl.length();
    }

    if (end > start) {
        host = syncUrl.substr(start, end-start);        
    }      

    return host;
}

int CTPConfig::getHostPort(string syncUrl) {

    std::string::size_type start, endSlash, endColon, urlLength;
    string hostPort = "";
    urlLength = syncUrl.length();
    int port = 0;
    // Extract the port from syncUrl: "http://<hostName>:8080/funambol/ds"    
    start = syncUrl.find("://", 0);
    if (start != std::string::npos) {
        start += 3;
    } else {
        // try to extract the port from <hostName>:8080/funambol/ds"  
        start = 0;
    }
    
    endSlash = syncUrl.find_first_of("/", start);       // stop if ":" or "/" found
    endColon = syncUrl.find_first_of(":", start);       // stop if ":" or "/" found
    
    if (endSlash == std::string::npos && endColon == std::string::npos) {
        // there is no port
        // hostname
    } else if (endSlash != std::string::npos && endColon == std::string::npos) {
        // there is no port
        // hostname/funambol
    } else if (endSlash == std::string::npos && endColon != std::string::npos) {
        // there is port
        // hostname:8080            
        hostPort = syncUrl.substr(endColon + 1, urlLength - start);
    } else {
        if (endSlash > endColon) {
            // there is port
            // hostname:8080/funambol            
            hostPort = syncUrl.substr(endColon + 1, endSlash - endColon - 1);
        }
    }
    
    if (hostPort != "") {
        port = atoi(hostPort.c_str());
    }

    return port;
}
    

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品亚洲porn| 麻豆中文一区二区| 日韩激情在线观看| 国产精品白丝av| 欧美精品v国产精品v日韩精品| 国产婷婷一区二区| 视频一区国产视频| 欧美自拍丝袜亚洲| 国产精品免费aⅴ片在线观看| 日韩高清不卡一区| 欧美日韩三级在线| 亚洲免费观看视频| 99久久久久免费精品国产| 精品久久久久久久久久久久包黑料 | 亚洲一区二区影院| 国产麻豆精品一区二区| 91精品国产免费久久综合| 一区二区三区精密机械公司| 国产91丝袜在线播放| 日韩免费电影网站| 三级影片在线观看欧美日韩一区二区| www.亚洲激情.com| 国产精品久久99| 成人丝袜视频网| 国产精品国产三级国产普通话99| 久久综合综合久久综合| 日韩一区二区三区视频在线| 婷婷一区二区三区| 91精品综合久久久久久| 亚洲成av人**亚洲成av**| 欧洲国内综合视频| 亚洲乱码中文字幕综合| 色老综合老女人久久久| 久久综合资源网| 免费人成精品欧美精品| 欧美一级黄色片| 久久国产福利国产秒拍| 精品国产乱码久久久久久浪潮| 美国毛片一区二区三区| 日本一区二区三区久久久久久久久不 | 成人一二三区视频| 欧美激情一区二区| 91色在线porny| 亚洲一区二区在线免费看| 欧美天天综合网| 美女视频黄 久久| 26uuu亚洲综合色| 菠萝蜜视频在线观看一区| 亚洲人成影院在线观看| 欧美在线播放高清精品| 日本欧美韩国一区三区| 久久婷婷综合激情| 99久久久精品| 肉色丝袜一区二区| 国产日产欧美一区二区三区| 91亚洲精华国产精华精华液| 亚洲观看高清完整版在线观看| 91精品视频网| 国产91丝袜在线观看| 一区二区三区四区不卡在线 | 久久亚洲免费视频| jizzjizzjizz欧美| 亚洲一本大道在线| 国产亚洲制服色| 欧美又粗又大又爽| 狠狠色丁香久久婷婷综合丁香| 国产精品蜜臀在线观看| 欧美一区二区视频在线观看2020| 国产精品99久久久久久宅男| 尤物在线观看一区| 26uuu国产在线精品一区二区| 99久久精品一区二区| 美女在线视频一区| 一区二区三区国产精品| 久久色在线观看| 欧洲一区在线观看| 成人h精品动漫一区二区三区| 午夜精品久久久久久久久| 国产精品视频免费看| 日韩欧美一区在线观看| 一本一本大道香蕉久在线精品| 中文字幕一区二区三区在线不卡 | 成人爽a毛片一区二区免费| 一区二区三区精品在线观看| 精品久久久久久久人人人人传媒| 91久久精品网| 99久久久免费精品国产一区二区| 捆绑调教美女网站视频一区| 亚洲综合丁香婷婷六月香| 久久免费的精品国产v∧| 欧美日韩一区二区三区不卡 | 国产精品国产a| 精品国产自在久精品国产| 在线观看一区二区视频| 99久久久国产精品免费蜜臀| 国产麻豆成人精品| 欧美aa在线视频| 婷婷综合在线观看| 亚洲午夜在线视频| 亚洲一区二区偷拍精品| 成人中文字幕电影| 久久久亚洲午夜电影| 欧美日韩国产在线观看| 成人午夜电影网站| 东方aⅴ免费观看久久av| 麻豆精品一二三| 日韩av不卡在线观看| 亚洲h动漫在线| 婷婷国产v国产偷v亚洲高清| 亚洲一区影音先锋| 亚洲综合无码一区二区| 亚洲日本乱码在线观看| 亚洲视频每日更新| 亚洲天堂免费看| 亚洲视频一二三| 亚洲综合免费观看高清在线观看| 亚洲猫色日本管| 一区二区三区中文免费| 亚洲裸体xxx| 亚洲国产成人高清精品| 午夜精品一区二区三区免费视频| 亚洲一二三区在线观看| 天天色天天操综合| 蓝色福利精品导航| 国产成人在线视频播放| 亚洲最大的成人av| 中文字幕一区日韩精品欧美| 成人av资源站| 成人午夜激情片| 色乱码一区二区三区88| 欧美性极品少妇| 日韩女优制服丝袜电影| 26uuuu精品一区二区| 国产日韩高清在线| 日韩伦理免费电影| 日韩激情av在线| 国产成人免费av在线| jizzjizzjizz欧美| 3d成人h动漫网站入口| 久久一夜天堂av一区二区三区 | 日韩欧美在线123| 久久精品人人做人人爽97| 国产精品不卡一区二区三区| 亚洲午夜久久久久| 久久国产成人午夜av影院| 北条麻妃国产九九精品视频| 欧美日韩在线免费视频| 久久夜色精品国产欧美乱极品| 国产精品全国免费观看高清 | 亚洲日本va午夜在线影院| 欧美经典三级视频一区二区三区| 亚洲欧美在线aaa| 日本成人在线电影网| 99久久精品免费精品国产| 欧美久久久久久蜜桃| 国产欧美一区二区三区在线老狼| 综合自拍亚洲综合图不卡区| 蜜臀久久久99精品久久久久久| 国产精品69久久久久水密桃| 欧美视频精品在线| 国产视频一区二区在线观看| 午夜影院在线观看欧美| 成人精品鲁一区一区二区| 欧美精品少妇一区二区三区 | 91免费在线播放| 欧美xxxxxxxx| 亚洲成人综合视频| 成人午夜视频福利| 精品免费日韩av| 午夜精品久久久久久| 99精品久久只有精品| www国产精品av| 一区二区三区四区不卡视频| 欧美色欧美亚洲另类二区| 中文字幕欧美一| 欧美精品第1页| 亚洲日本成人在线观看| 国产一区二区三区观看| 欧美精品乱码久久久久久按摩| 欧美国产乱子伦| 国产一区二区三区日韩| 91精品视频网| 日韩黄色小视频| 欧美私模裸体表演在线观看| 国产精品色在线| 国产高清亚洲一区| www一区二区| 蜜桃传媒麻豆第一区在线观看| 欧美视频在线一区二区三区| 亚洲日本在线观看| 9i看片成人免费高清| 中文字幕一区二区在线播放| 国产mv日韩mv欧美| 国产欧美精品国产国产专区| 久久97超碰色| 久久天堂av综合合色蜜桃网| 狠狠色伊人亚洲综合成人| 精品乱人伦小说| 国产成人自拍高清视频在线免费播放| 2024国产精品|