Path: blob/aarch64-shenandoah-jdk8u272-b10/jdk/test/java/rmi/activation/Activatable/checkImplClassLoader/ActivatableImpl.java
38826 views
/*1* Copyright (c) 2000, 2001, Oracle and/or its affiliates. All rights reserved.2* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.3*4* This code is free software; you can redistribute it and/or modify it5* under the terms of the GNU General Public License version 2 only, as6* published by the Free Software Foundation.7*8* This code is distributed in the hope that it will be useful, but WITHOUT9* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or10* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License11* version 2 for more details (a copy is included in the LICENSE file that12* accompanied this code).13*14* You should have received a copy of the GNU General Public License version15* 2 along with this work; if not, write to the Free Software Foundation,16* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.17*18* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA19* or visit www.oracle.com if you need additional information or have any20* questions.21*/2223/*24*25*/2627import java.rmi.activation.Activatable;28import java.rmi.RemoteException;29import java.rmi.activation.ActivationID;30import java.rmi.MarshalledObject;31import java.net.URL;3233public class ActivatableImpl extends Activatable implements MyRMI {3435private boolean classLoaderOk = false;3637public ActivatableImpl(ActivationID id, MarshalledObject mobj)38throws RemoteException39{40super(id, 0);4142ClassLoader thisLoader = ActivatableImpl.class.getClassLoader();43ClassLoader ccl = Thread.currentThread().getContextClassLoader();4445System.err.println("implLoader: " + thisLoader);46System.err.println("ccl: " + ccl);4748/*49* the context class loader is the ccl from when this object50* was exported. If the bug has been fixed, the ccl will be51* the same as the class loader of this class.52*/53classLoaderOk = (thisLoader == ccl);54}5556public boolean classLoaderOk() throws RemoteException {57return classLoaderOk;58}5960public void shutdown() throws Exception {61ActivationLibrary.deactivate(this, getID());62}63}646566