📄 librarymanager.java
字号:
/* * @(#)LibraryManager.java 1.31 03/01/23 * * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. *//* * Licensed Materials - Property of IBM * RMI-IIOP v1.0 * Copyright IBM Corp. 1998 1999 All Rights Reserved * * US Government Users Restricted Rights - Use, duplication or * disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */package com.sun.corba.se.internal.io;import java.security.AccessController;//import sun.security.action.LoadLibraryAction;import java.security.PrivilegedAction;public class LibraryManager{ private static boolean attempted = false; private static int majorVersion = 1; private static int minorVersion = 11; /*sun.4296963 ibm.11861*/ native private static int getMajorVersion(); native private static int getMinorVersion(); public static boolean load() { // First check if the ioser library has already been loaded // by other code in this VM using System.load() // or System.loadLibrary(). try { if ( getMajorVersion() == majorVersion && getMinorVersion() == minorVersion ) { attempted = true; return true ; } } catch ( java.lang.UnsatisfiedLinkError ule ) { } // Now try to load the ioser library try{ String libName = "ioser12"; try{ AccessController.doPrivileged(new LoadLibraryAction(libName)); } catch(java.lang.UnsatisfiedLinkError ule1) { if (!attempted){ System.out.println( "ERROR! Shared library " + libName + " could not be found."); } throw ule1; } if ((!attempted) && ((getMajorVersion() != majorVersion) || (getMinorVersion() != minorVersion))) { System.out.println( "WARNING : The " + libName + " library is not the correct version."); System.out.println(" Expected v" + majorVersion + "." + minorVersion + " but loaded v" + getMajorVersion() + "." + getMinorVersion() + "\n"); System.out.println( " *** YOU ARE ADVISED TO USE EXPECTED VERSION ***"); } attempted = true; return true; } catch(Error e){ attempted = true; return false; } } private static native boolean setEnableOverride(Class targetClass, Object instance);}// For some reason it doesn't work with the public class// sun.security.action.LoadLibraryActionclass LoadLibraryAction implements PrivilegedAction { private String libname; public LoadLibraryAction (String libname) { this.libname = libname; } public Object run() { System.loadLibrary(libname); return null; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -