Move Third Party components to Argeo Distribution
[gpl/argeo-slc.git] / ext / javax.mail.mbox / src / com / sun / mail / mbox / UNIXFile.java
diff --git a/ext/javax.mail.mbox/src/com/sun/mail/mbox/UNIXFile.java b/ext/javax.mail.mbox/src/com/sun/mail/mbox/UNIXFile.java
deleted file mode 100644 (file)
index ab1579e..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v. 2.0, which is available at
- * http://www.eclipse.org/legal/epl-2.0.
- *
- * This Source Code may also be made available under the following Secondary
- * Licenses when the conditions for such availability set forth in the
- * Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
- * version 2 with the GNU Classpath Exception, which is available at
- * https://www.gnu.org/software/classpath/license.html.
- *
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
- */
-
-package com.sun.mail.mbox;
-
-import java.io.File;
-import java.io.FileDescriptor;
-import java.util.StringTokenizer;
-
-public class UNIXFile extends File {
-    protected static final boolean loaded;
-    protected static final int lockType;
-
-    private static final long serialVersionUID = -7972156315284146651L;
-
-    public UNIXFile(String name) {
-       super(name);
-    }
-
-    // lock type enum
-    protected static final int NONE = 0;
-    protected static final int NATIVE = 1;
-    protected static final int JAVA = 2;
-
-    static {
-       String lt = System.getProperty("mail.mbox.locktype", "native");
-       int type = NATIVE;
-       if (lt.equalsIgnoreCase("none"))
-           type = NONE;
-       else if (lt.equalsIgnoreCase("java"))
-           type = JAVA;
-       lockType = type;
-
-       boolean lloaded = false;
-       if (lockType == NATIVE) {
-           try {
-               System.loadLibrary("mbox");
-               lloaded = true;
-           } catch (UnsatisfiedLinkError e) {
-               String classpath = System.getProperty("java.class.path");
-               String sep = System.getProperty("path.separator");
-               String arch = System.getProperty("os.arch");
-               StringTokenizer st = new StringTokenizer(classpath, sep);
-               while (st.hasMoreTokens()) {
-                   String path = st.nextToken();
-                   if (path.endsWith("/classes") ||
-                           path.endsWith("/mail.jar") ||
-                           path.endsWith("/javax.mail.jar")) {
-                       int i = path.lastIndexOf('/');
-                       String libdir = path.substring(0, i + 1) + "lib/";
-                       String lib = libdir + arch + "/libmbox.so";
-                       try {
-                           System.load(lib);
-                           lloaded = true;
-                           break;
-                       } catch (UnsatisfiedLinkError e2) {
-                           lib = libdir + "libmbox.so";
-                           try {
-                               System.load(lib);
-                               lloaded = true;
-                               break;
-                           } catch (UnsatisfiedLinkError e3) {
-                               continue;
-                           }
-                       }
-                   }
-               }
-           }
-       }
-       loaded = lloaded;
-       if (loaded)
-           initIDs(FileDescriptor.class, FileDescriptor.in);
-    }
-
-    /**
-     * Return the access time of the file.
-     */
-    public static long lastAccessed(File file) {
-       return lastAccessed0(file.getPath());
-    }
-
-    public long lastAccessed() {
-       return lastAccessed0(getPath());
-    }
-
-    private static native void initIDs(Class<FileDescriptor> fdClass,
-                                       FileDescriptor stdin);
-
-    /**
-     * Lock the file referred to by fd.  The string mode is "r"
-     * for a read lock or "rw" for a write lock.  Don't block
-     * if lock can't be acquired.
-     */
-    public static boolean lock(FileDescriptor fd, String mode) {
-       return lock(fd, mode, false);
-    }
-
-    /**
-     * Lock the file referred to by fd.  The string mode is "r"
-     * for a read lock or "rw" for a write lock.  If block is set,
-     * block waiting for the lock if necessary.
-     */
-    private static boolean lock(FileDescriptor fd, String mode, boolean block) {
-       //return loaded && lock0(fd, mode);
-       if (loaded) {
-           boolean ret;
-           //System.out.println("UNIXFile.lock(" + fd + ", " + mode + ")");
-           ret = lock0(fd, mode, block);
-           //System.out.println("UNIXFile.lock returns " + ret);
-           return ret;
-       }
-       return false;
-    }
-
-    private static native boolean lock0(FileDescriptor fd, String mode,
-                                                               boolean block);
-
-    public static native long lastAccessed0(String name);
-}