// Path: src/android/taobao/atlas/runtime/RuntimeVariables.java
// public class RuntimeVariables {
//     public static Application androidApplication;
//     public static DelegateClassLoader delegateClassLoader;
//     public static Resources delegateResources;
// }


import java.io.File;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.nio.channels.FileChannel;
import java.nio.channels.FileLock;
import java.util.HashMap;
import java.util.Map;
import android.app.ActivityManager;
import android.app.ActivityManager.RunningAppProcessInfo;
import android.os.Process;
import android.taobao.atlas.runtime.RuntimeVariables;
import android.util.Log;
package android.taobao.atlas.util;



public class AtlasFileLock {
    private static final String TAG = "AtlasFileLock";
    private static String processName;
    private static AtlasFileLock singleton;
    private Map<String, FileLockCount> mRefCountMap;

    private class FileLockCount {
        FileLock mFileLock;
        int mRefCount;

        FileLockCount(FileLock fileLock, int i) {
            this.mFileLock = fileLock;
            this.mRefCount = i;
        }
    }

    public AtlasFileLock() {
        this.mRefCountMap = new HashMap();
    }

    static {
        int myPid = Process.myPid();
// Path: src/android/taobao/atlas/runtime/RuntimeVariables.java
// public class RuntimeVariables {
//     public static Application androidApplication;
//     public static DelegateClassLoader delegateClassLoader;
//     public static Resources delegateResources;
// }


// Path: src/android/taobao/atlas/util/AtlasFileLock.java
import java.io.File;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.nio.channels.FileChannel;
import java.nio.channels.FileLock;
import java.util.HashMap;
import java.util.Map;
import android.app.ActivityManager;
import android.app.ActivityManager.RunningAppProcessInfo;
import android.os.Process;
import android.taobao.atlas.runtime.RuntimeVariables;
import android.util.Log;

package android.taobao.atlas.util;



public class AtlasFileLock {
    private static final String TAG = "AtlasFileLock";
    private static String processName;
    private static AtlasFileLock singleton;
    private Map<String, FileLockCount> mRefCountMap;

    private class FileLockCount {
        FileLock mFileLock;
        int mRefCount;

        FileLockCount(FileLock fileLock, int i) {
            this.mFileLock = fileLock;
            this.mRefCount = i;
        }
    }

    public AtlasFileLock() {
        this.mRefCountMap = new HashMap();
    }

    static {
        int myPid = Process.myPid();
        if (RuntimeVariables.androidApplication.getApplicationContext() != null) {