Ejemplo n.º 1
0
 public function allocobj($token, $type, $tagname)
 {
     $ret = array('ret' => 4, 'msg' => 'alloc object token invalid!');
     $token_c = new \lib\Token_Core();
     if ($token_c->is_token($token)) {
         if (APP_DEBUG) {
             file_put_contents('/var/log/nginx/chdserver.log', $token . '|allocobj|' . $tagname . '|' . $type . PHP_EOL, FILE_APPEND | LOCK_EX);
         }
         $Bucket_name = self::_get_bucket_name_by_ftype($type);
         $host = CEPH_HOST;
         $aws_key = session('user_key');
         $aws_secret_key = session('user_secret_key');
         $user = new UserService();
         $conn = new cephService($host, $aws_key, $aws_secret_key);
         $alloc_ret = $conn->allocobj($Bucket_name, $tagname);
         if ($alloc_ret['status'] === 0) {
             $errmsg = 'init object successfully!' . $alloc_ret['upload_id'];
             $ret['ret'] = $alloc_ret['status'];
             $ret['msg'] = $errmsg;
             $user->addUserUploadMarker(session('userid'), $alloc_ret['upload_id'], $tagname);
         } elseif ($alloc_ret['status'] === 2) {
             $errmsg = 'alloc object failed!';
             $ret['ret'] = $alloc_ret['status'];
             $ret['msg'] = $errmsg;
         } elseif ($alloc_ret['status'] === 7) {
             $ret['ret'] = $alloc_ret['status'];
             $ret['msg'] = 'create tpm dir failed';
         } else {
             $ret['ret'] = $alloc_ret['status'];
             $ret['msg'] = 'unkown error';
         }
     }
     $ret_h = new \proto\RetHead($ret);
     $alloco_ret = new AllocObjResult(array('result' => $ret_h, 'resourceid' => $tagname));
     return $alloco_ret;
 }