Example #1
0
 public static function getRoutedSql($querys, $sql, $checkSession = true)
 {
     $obj = new Query();
     $obj->setRequest($sql);
     $obj->setCheckSession($checkSession);
     // perform the route process
     return Request::routeRequest('POST', '/query', array(), Query::encodeQuery($obj), $querys, 'query');
 }
Example #2
0
 public function postMultiGetRequest($callName, $input, $par = array())
 {
     $params = array();
     extract($par, EXTR_OVERWRITE);
     $config = parse_ini_file(dirname(__FILE__) . '/config.ini', TRUE);
     $querys = $input;
     $sql = '';
     $querys = explode("\n", $querys);
     foreach ($querys as $query) {
         $query = explode('/query/procedure', $query)[1];
         $params = explode('/', $query);
         array_shift($params);
         $procedure = array_shift($params);
         $sql .= $this->generateQuery($procedure, $params) . "select 'next';";
     }
     $answer = DBRequest::request2($sql, false, $config);
     $result = Model::isOK();
     $res = array();
     $resArray = array();
     foreach ($answer as $query_result) {
         $obj = new Query();
         if (isset($query_result['content']) && $query_result['content'] === array(array("next" => 'next'))) {
             $resArray[] = array(Query::encodeQuery($res), 'ETag' => CacheManager::generateETag($res));
             $res = array();
             continue;
         }
         if ($query_result['errno'] != 0) {
             if (isset($query_result['errno']) && $query_result['errno'] != 0) {
                 Logger::Log('GET queryResult failed errno: ' . $query_result['errno'] . ' error: ' . $query_result['error'], LogLevel::ERROR);
             }
             if (!isset($query_result['content']) || !$query_result['content']) {
                 Logger::Log('GET queryResult failed, no content', LogLevel::ERROR);
             }
             if (isset($query_result['errno']) && $query_result['errno'] == 401) {
                 $result = Model::isRejected();
             } else {
                 $result = Model::isProblem();
             }
         } elseif (gettype($query_result['content']) == 'boolean') {
             $obj->setResponse(array());
             if (isset($query_result['affectedRows'])) {
                 $obj->setAffectedRows($query_result['affectedRows']);
             }
             if (isset($query_result['insertId'])) {
                 $obj->setInsertId($query_result['insertId']);
             }
             if (isset($query_result['errno'])) {
                 $obj->setErrno($query_result['errno']);
             }
             if (isset($query_result['numRows'])) {
                 $obj->setNumRows($query_result['numRows']);
             }
             if (isset($query_result['errno']) && $query_result['errno'] > 0) {
                 $result = Model::isProblem();
             } else {
                 $result = Model::isOK();
             }
         } else {
             $data = array();
             if (isset($query_result['numRows']) && $query_result['numRows'] > 0) {
                 $data = $query_result['content'];
             }
             $obj->setResponse($data);
             if (isset($query_result['affectedRows'])) {
                 $obj->setAffectedRows($query_result['affectedRows']);
             }
             if (isset($query_result['insertId'])) {
                 $obj->setInsertId($query_result['insertId']);
             }
             if (isset($query_result['errno'])) {
                 $obj->setErrno($query_result['errno']);
             }
             if (isset($query_result['numRows'])) {
                 $obj->setNumRows($query_result['numRows']);
             }
             $result = Model::isOK();
         }
         $res[] = $obj;
     }
     //$resArray[]=array('content'=>$res,'ETag'=>CacheManager::generateETag($res));
     $result['content'] = $resArray;
     return $result;
 }