110 lines · 3.3 KB · Java
RawDownload
/* * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.  Oracle designates this * particular file as subject to the "Classpath" exception as provided * by Oracle in the LICENSE file that accompanied this code. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions. */ package com.sun.jmx.remote.internal; import java.util.Properties;import java.rmi.Remote;import java.rmi.RemoteException;import java.rmi.NoSuchObjectException; /** * An interface to a subset of the RMI-IIOP and CORBA APIs to avoid a * static dependencies on the types defined by these APIs. */ public interface IIOPProxy {     /**     * Returns true if the given object is a Stub.     */    boolean isStub(Object obj);     /**     * Returns the Delegate to which the given Stub delegates.     */    Object getDelegate(Object stub);     /**     * Sets the Delegate for a given Stub.     */    void setDelegate(Object stub, Object delegate);     /**     * Returns the ORB associated with the given stub     *     * @throws  UnsupportedOperationException     *          if the object does not support the operation that     *          was invoked     */    Object getOrb(Object stub);     /**     * Connects the Stub to the given ORB.     */    void connect(Object stub, Object orb) throws RemoteException;     /**     * Returns true if the given object is an ORB.     */    boolean isOrb(Object obj);     /**     * Creates, and returns, a new ORB instance.     */    Object createOrb(String[] args, Properties props);     /**     * Converts a string, produced by the object_to_string method, back     * to a CORBA object reference.     */    Object stringToObject(Object orb, String str);     /**     * Converts the given CORBA object reference to a string.     */    String objectToString(Object orb, Object obj);     /**     * Checks to ensure that an object of a remote or abstract interface     * type can be cast to a desired type.     */    <T> T narrow(Object narrowFrom, Class<T> narrowTo);     /**     * Makes a server object ready to receive remote calls     */    void exportObject(Remote obj) throws RemoteException;     /**     * Deregisters a server object from the runtime.     */    void unexportObject(Remote obj) throws NoSuchObjectException;     /**     * Returns a stub for the given server object.     */    Remote toStub(Remote obj) throws NoSuchObjectException;}