summaryrefslogtreecommitdiffstats
path: root/ppapi/shared_impl/file_system_util.cc
blob: 25650d1c853916a0f64b7d3b0718140b2693539a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "ppapi/shared_impl/file_system_util.h"

#include "base/logging.h"

namespace ppapi {

bool FileSystemTypeIsValid(PP_FileSystemType type) {
  return (type == PP_FILESYSTEMTYPE_LOCALPERSISTENT ||
          type == PP_FILESYSTEMTYPE_LOCALTEMPORARY ||
          type == PP_FILESYSTEMTYPE_EXTERNAL ||
          type == PP_FILESYSTEMTYPE_ISOLATED);
}

bool FileSystemTypeHasQuota(PP_FileSystemType type) {
  return (type == PP_FILESYSTEMTYPE_LOCALTEMPORARY ||
          type == PP_FILESYSTEMTYPE_LOCALPERSISTENT);
}

std::string IsolatedFileSystemTypeToRootName(
    PP_IsolatedFileSystemType_Private type) {
  switch (type) {
    case PP_ISOLATEDFILESYSTEMTYPE_PRIVATE_CRX:
      return "crxfs";
    case PP_ISOLATEDFILESYSTEMTYPE_PRIVATE_PLUGINPRIVATE:
      return "pluginprivate";
    default:
      NOTREACHED() << type;
      return std::string();
  }
}

}  // namespace ppapi