当前位置: 首页>>代码示例>>C++>>正文


C++ URL::HTTPOption方法代码示例

本文整理汇总了C++中URL::HTTPOption方法的典型用法代码示例。如果您正苦于以下问题:C++ URL::HTTPOption方法的具体用法?C++ URL::HTTPOption怎么用?C++ URL::HTTPOption使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在URL的用法示例。


在下文中一共展示了URL::HTTPOption方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: do_stat

  DataStatus DataPointGFAL::do_stat(const URL& stat_url, FileInfo& file) {
    struct stat st;
    int res;
    {
      GFALEnvLocker gfal_lock(usercfg, lfc_host);
      res = gfal_stat(GFALUtils::GFALURL(stat_url).c_str(), &st);
    }
    if (res < 0) {
      logger.msg(VERBOSE, "gfal_stat failed: %s", StrError(gfal_posix_code_error()));
      int error_no = GFALUtils::HandleGFALError(logger);
      return DataStatus(DataStatus::StatError, error_no);
    }

    if(S_ISREG(st.st_mode)) {
      file.SetType(FileInfo::file_type_file);
    } else if(S_ISDIR(st.st_mode)) {
      file.SetType(FileInfo::file_type_dir);
    } else {
      file.SetType(FileInfo::file_type_unknown);
    }

    std::string path = stat_url.Path();
    // For SRM the path can be given as SFN HTTP Option
    if ((stat_url.Protocol() == "srm" && !stat_url.HTTPOption("SFN").empty())) path = stat_url.HTTPOption("SFN");

    std::string name = Glib::path_get_basename(path);
    file.SetName(name);

    file.SetSize(st.st_size);
    file.SetModified(st.st_mtime);
    file.SetMetaData("atime", (Time(st.st_atime)).str());
    file.SetMetaData("ctime", (Time(st.st_ctime)).str());

    std::string perms;
    if (st.st_mode & S_IRUSR) perms += 'r'; else perms += '-';
    if (st.st_mode & S_IWUSR) perms += 'w'; else perms += '-';
    if (st.st_mode & S_IXUSR) perms += 'x'; else perms += '-';
    if (st.st_mode & S_IRGRP) perms += 'r'; else perms += '-';
    if (st.st_mode & S_IWGRP) perms += 'w'; else perms += '-';
    if (st.st_mode & S_IXGRP) perms += 'x'; else perms += '-';
    if (st.st_mode & S_IROTH) perms += 'r'; else perms += '-';
    if (st.st_mode & S_IWOTH) perms += 'w'; else perms += '-';
    if (st.st_mode & S_IXOTH) perms += 'x'; else perms += '-';
    file.SetMetaData("accessperm", perms);

    return DataStatus::Success;    
  }
开发者ID:,项目名称:,代码行数:47,代码来源:


注:本文中的URL::HTTPOption方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。