ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 7788


Ignore:
Timestamp:
Jul 21, 2008, 6:23:56 PM (13 years ago)
Author:
ebihara
Message:

チケットのリスト取得時にファンクションキャッシュをおこなうようにした

File:
1 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/branches/work/ebihara/prj_module_trac/webapp_ext/modules/trac/util.php

    r7787 r7788  
    2828function trac_ticket_list($username, $password, $qstr, $page, $page_size)
    2929{
    30     $host = 'trac.openpne.jp';
    31     $path = '/login/xmlrpc';
    32 
    33     $replacement = array('::', ':', ',');
    34     $search = array('!=', '=', '&');
    35     $qstr = str_replace($replacement, $search, $qstr);
    36 
    37     $params = array(
    38         new XML_RPC_Value($qstr, 'string'),
    39     );
    40 
    41     $list = communicate_with_trac('ticket.query', $username, $password, $params);
    42     $total = count($list);
    43 
    44     if (!$total) {
     30    $list = trac_ticket_query($username, $password, $qstr);
     31    if (!$list) {
    4532        return array(false, false, false);
    4633    }
    4734
     35    $total = count($list);
    4836    $start = ($page_size - 1) * $page;
    4937    $end = $start + $page_size;
     
    6856}
    6957
     58function trac_ticket_query($username, $password, $qstr)
     59{
     60    static $is_recurred = false;
     61    if (!$is_recurred) {
     62        $is_recurred = true;
     63        $funcargs = func_get_args();
     64        return pne_cache_recursive_call(OPENPNE_FUNCTION_CACHE_LIFETIME_SHORT, __FUNCTION__, $funcargs);
     65    }
     66    $is_recurred = false;
     67
     68    $replacement = array('::', ':', ',');
     69    $search = array('!=', '=', '&');
     70    $qstr = str_replace($replacement, $search, $qstr);
     71
     72    $params = array(
     73        new XML_RPC_Value($qstr, 'string'),
     74    );
     75
     76    return communicate_with_trac('ticket.query', $username, $password, $params);
     77}
     78
    7079function trac_ticket_get($username, $password, $id)
    7180{
    72     $host = 'trac.openpne.jp';
    73     $path = '/login/xmlrpc';
    74 
    7581    $params = array(
    7682        new XML_RPC_Value($id, 'int'),
Note: See TracChangeset for help on using the changeset viewer.