summaryrefslogtreecommitdiff
path: root/chromium/base/files/file_util_android.cc
blob: 1f921f5519570271f2ec01b176004df31fa804f2 (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 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "base/files/file_util.h"

#include "base/android/jni_android.h"
#include "base/android/jni_string.h"
#include "base/base_jni_headers/FileUtils_jni.h"
#include "base/files/file_path.h"
#include "base/path_service.h"

using base::android::JavaParamRef;
using base::android::JavaRef;
using base::android::ScopedJavaLocalRef;

namespace base {
namespace android {

static ScopedJavaLocalRef<jstring> JNI_FileUtils_GetAbsoluteFilePath(
    JNIEnv* env,
    const JavaParamRef<jstring>& j_file_path) {
  base::FilePath file_path(
      base::android::ConvertJavaStringToUTF8(env, j_file_path));
  base::FilePath absolute_file_path = MakeAbsoluteFilePath(file_path);
  return base::android::ConvertUTF8ToJavaString(env,
                                                absolute_file_path.value());
}

}  // namespace android

bool GetShmemTempDir(bool executable, base::FilePath* path) {
  return PathService::Get(base::DIR_CACHE, path);
}

}  // namespace base