Spec-Zone.ru › OpenJDK 8

Класс Util

  • java.lang.Object
    • javax.rmi.CORBA.Util

public class Util
extends Object

Предоставляет служебные методы, которые могут использоваться заглушками и связями для выполнения общих операций.

Методы

Модификатор и тип Метод и описание
static Object copyObject(Object obj, ORB orb)

Копирует или подключает объект.

static Object[] copyObjects(Object[] obj, ORB orb)

Копирует или подключает массив объектов.

static ValueHandler createValueHandler()

Возвращает одиночный экземпляр класса, реализующего интерфейс ValueHandler.

static String getCodebase(Class clz)

Возвращает базу кода, если таковая имеется, для данного класса.

static Tie getTie(Remote target)

Возвращает ссылку (если таковая имеется) для заданного целевого объекта.

static boolean isLocal(Stub stub)

Метод isLocal имеет те же семантику, что и метод ObjectImpl._is_local, за исключением того, что он может бросить исключение RemoteException.

static Class loadClass(String className, String remoteCodebase, ClassLoader loader)

Возвращает экземпляр класса для указанного класса.

static RemoteException mapSystemException(SystemException ex)

Преобразует исключение SystemException в RemoteException.

static Object readAny(InputStream in)

Считывает java.lang.Object как CORBA any.

static void registerTarget(Tie tie, Remote target)

Регистрирует целевой объект для ссылки.

static void unexportObject(Remote target)

Удаляет связанную ссылку из внутренней таблицы и вызывает Tie.deactivate() для деактивации объекта.

static RemoteException wrapException(Throwable orig)

Обертывает исключение, сгенерированное методом реализации.

static void writeAbstractObject(OutputStream out, Object obj)

Записывает java.lang.Object как значение или CORBA Object.

static void writeAny(OutputStream out, Object obj)

Записывает любой java.lang.Object как CORBA any.

static void writeRemoteObject(OutputStream out, Object obj)

Записывает java.lang.Object как CORBA Object.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Методы

mapSystemException

public static RemoteException mapSystemException(SystemException ex)

Преобразует исключение SystemException в RemoteException.

Параметры:
ex - исключение SystemException для преобразования.
Возвращает:
преобразованное исключение.

writeAny

public static void writeAny(OutputStream out,
                            Object obj)

Записывает любой java.lang.Object как CORBA any.

Параметры:
out - поток для записи any.
obj - объект для записи как any.

readAny

public static Object readAny(InputStream in)

Считывает java.lang.Object как CORBA any.

Параметры:
in - поток для чтения any.
Возвращает:
объект, считанный из потока.

writeRemoteObject

public static void writeRemoteObject(OutputStream out,
                                     Object obj)

Записывает java.lang.Object как CORBA Object. Если obj является экспортированным объектом RMI-IIOP сервера, ищется ссылка, связывается с obj, затем записывается в out.write_Object(org.omg.CORBA.Object). Если obj является объектом CORBA Object, он записывается в out.write_Object(org.omg.CORBA.Object).

Параметры:
out - поток для записи объекта.
obj - объект для записи.

writeAbstractObject

public static void writeAbstractObject(OutputStream out,
                                       Object obj)

Записывает java.lang.Object как значение или CORBA Object. Если obj является объектом-значением или заглушкой, он записывается в out.write_abstract_interface(java.lang.Object). Если obj является экспортированным объектом RMI-IIOP сервера, ищется ссылка, связывается с obj, затем записывается в out.write_abstract_interface(java.lang.Object).

Параметры:
out - поток для записи объекта.
obj - объект для записи.

registerTarget

public static void registerTarget(Tie tie,
                                  Remote target)

Регистрирует целевой объект для ссылки. Добавляет ссылку в внутреннюю таблицу и вызывает Tie.setTarget(java.rmi.Remote) в объекте ссылки.

Параметры:
tie - регистрируемая ссылка.
target - целевой объект для ссылки.

unexportObject

public static void unexportObject(Remote target)
                           throws NoSuchObjectException

Удаляет связанную ссылку из внутренней таблицы и вызывает Tie.deactivate() для деактивации объекта.

Параметры:
target - объект для удаления экспорта.
Исключения:
NoSuchObjectException

getTie

public static Tie getTie(Remote target)

Возвращает ссылку (если таковая имеется) для заданного целевого объекта.

Возвращает:
ссылку или null, если для данного целевого объекта ссылка не зарегистрирована.

createValueHandler

public static ValueHandler createValueHandler()

Возвращает одиночный экземпляр класса, реализующего интерфейс ValueHandler.

Возвращает:
класс, реализующий интерфейс ValueHandler.

getCodebase

public static String getCodebase(Class clz)

Возвращает базу кода, если таковая имеется, для данного класса.

Параметры:
clz - класс, для которого требуется база кода.
Возвращает:
список URL через пробел или null.

loadClass

public static Class loadClass(String className,
                              String remoteCodebase,
                              ClassLoader loader)
                       throws ClassNotFoundException

Возвращает экземпляр класса для указанного класса.

Спецификация для этого метода — "отображение языка Java в IDL", ptc/00-01-06.

В Java SE Platform этот метод работает следующим образом:

  • Находит первое не-null значение ClassLoader в стеке вызовов и пытается загрузить класс с помощью этого ClassLoader.
  • Если первый шаг завершился неудачей, и если remoteCodebase не-null и useCodebaseOnly ложно, то вызывается java.rmi.server.RMIClassLoader.loadClass(remoteCodebase, className).
  • Если remoteCodebase равно null или useCodebaseOnly истинно, то вызывается java.rmi.server.RMIClassLoader.loadClass(className).
  • Если класс не был успешно загружен шагами 1, 2 или 3, и loader не-null, то вызывается loader.loadClass(className).
  • Если класс был успешно загружен шагами 1, 2, 3 или 4, то возвращается загруженный класс, в противном случае выбрасывается ClassNotFoundException.
Параметры:
className - имя класса.
remoteCodebase - список URL через пробел, где может находиться класс. Может быть null.
loader - ClassLoader, который может быть использован для загрузки класса, если все другие методы завершатся неудачей.
Возвращает:
объект Class, представляющий загруженный класс.
Исключения:
ClassNotFoundException - если класс не может быть загружен.

isLocal

public static boolean isLocal(Stub stub)
                       throws RemoteException

Метод isLocal имеет ту же семантику, что и метод ObjectImpl._is_local, за исключением того, что он может бросить исключение RemoteException. Метод _is_local() предоставляется, чтобы заглушки могли определить, реализуется ли конкретный объект локальным сервером, и, следовательно, могут ли использоваться локальные API вызовов.

Параметры:
stub - заглушка для проверки.
Возвращает:
Метод _is_local() возвращает true, если сервер, воплощающий объект, находится в том же процессе, что и заглушка, и они оба используют один и тот же экземпляр ORB. Метод _is_local() возвращает false в противном случае. По умолчанию _is_local() возвращает false.
Исключения:
RemoteException - Спецификация Java-IDL не определяет условия, при которых генерируется исключение RemoteException.

wrapException

public static RemoteException wrapException(Throwable orig)

Обертывает исключение, сгенерированное методом реализации. Возвращает соответствующее исключение для клиента.

Параметры:
orig - исключение для обертывания.
Возвращает:
обернутое исключение.

copyObjects

public static Object[] copyObjects(Object[] obj,
                                   ORB orb)
                            throws RemoteException

Копирует или подключает массив объектов. Используется локальными заглушками для копирования любого числа фактических параметров, сохраняя совместное использование между параметрами, если это необходимо, для поддержки семантики RMI.

Параметры:
obj - объекты для копирования или подключения.
orb - ORB.
Возвращает:
скопированные или подключенные объекты.
Исключения:
RemoteException - если любой объект не удалось скопировать или подключить.

copyObject

public static Object copyObject(Object obj,
                                ORB orb)
                         throws RemoteException

Копирует или подключает объект. Используется локальными заглушками для копирования фактического параметра, объекта результата или исключения.

Параметры:
obj - объект для копирования.
orb - ORB.
Возвращает:
скопированный или подключенный объект.
Исключения:
RemoteException - если объект не удалось скопировать или подключить.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API