BlockGuardOs.java revision 52724d3ebd4ccaaa4b9f5576e329d4272cde8ea9
1/* 2 * Copyright (C) 2011 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17package libcore.io; 18 19import dalvik.system.BlockGuard; 20import java.io.FileDescriptor; 21 22/** 23 * Informs BlockGuard of any activity it should be aware of. 24 */ 25public class BlockGuardOs extends ForwardingOs { 26 public BlockGuardOs(Os os) { 27 super(os); 28 } 29 30 public void fdatasync(FileDescriptor fd) throws ErrnoException { 31 BlockGuard.getThreadPolicy().onWriteToDisk(); 32 os.fdatasync(fd); 33 } 34 35 public void fsync(FileDescriptor fd) throws ErrnoException { 36 BlockGuard.getThreadPolicy().onWriteToDisk(); 37 os.fsync(fd); 38 } 39} 40