1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5package org.chromium.base;
6
7/**
8 * This class provides an interface to the native class for writing
9 * important data files without risking data loss.
10 */
11@JNINamespace("base::android")
12public class ImportantFileWriterAndroid {
13
14    /**
15     * Write a binary file atomically.
16     *
17     * This either writes all the data or leaves the file unchanged.
18     *
19     * @param fileName The complete path of the file to be written
20     * @param data The data to be written to the file
21     * @return true if the data was written to the file, false if not.
22     */
23    public static boolean writeFileAtomically(String fileName, byte[] data) {
24        return nativeWriteFileAtomically(fileName, data);
25    }
26
27    private static native boolean nativeWriteFileAtomically(
28            String fileName, byte[] data);
29}
30