Интерфейс RemoteRef
- Все суперинтерфейсы:
- Externalizable, Serializable
- Все известные дочерние интерфейсы:
- ServerRef
public interface RemoteRef extends Externalizable
RemoteRef представляет собой дескриптор удаленного объекта. RemoteStub использует удаленную ссылку для выполнения удаленного вызова метода для удаленного объекта.
- С:
- JDK1.1
- См. также:
RemoteStub
Поля
| Модификатор и тип | Поле и описание |
|---|---|
static String |
packagePrefix Инициализирует префикс пакета сервера: предполагается, что реализации классов ссылок сервера (например, UnicastRef, UnicastServerRef) находятся в пакете, определённом префиксом. |
static long |
serialVersionUID указывает совместимость с версией JDK 1.1.x класса. |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
void |
done(RemoteCall call) Устаревший. Заглушки стиля 1.2 больше не используют этот метод. Вместо использования последовательности вызовов методов к удалённой ссылке ( |
String |
getRefClass(ObjectOutput out) Возвращает имя класса типа ссылки, который должен быть сериализован в поток 'out'. |
void |
invoke(RemoteCall call) Устаревший. Заглушки стиля 1.2 больше не используют этот метод. Вместо использования последовательности вызовов методов к удалённой ссылке ( |
Object |
invoke(Remote obj,
Method method,
Object[] params,
long opnum) Вызвать метод. |
RemoteCall |
newCall(RemoteObject obj,
Operation[] op,
int opnum,
long hash) Устаревший. Заглушки стиля 1.2 больше не используют этот метод. Вместо использования последовательности вызовов методов к удалённой ссылке заглушки ( |
boolean |
remoteEquals(RemoteRef obj) Сравнивает два удалённых объекта на равенство. |
int |
remoteHashCode() Возвращает хэш-код удалённого объекта. |
String |
remoteToString() Возвращает строку, представляющую ссылку на этот удалённый объект. |
Методы, унаследованные от интерфейса java.io.Externalizable
readExternal, writeExternal Поля
serialVersionUID
static final long serialVersionUID
указывает совместимость с версией JDK 1.1.x класса.
- См. также:
- Значения константных полей
packagePrefix
static final String packagePrefix
Инициализирует префикс пакета сервера: предполагается, что реализации классов ссылок сервера (например, UnicastRef, UnicastServerRef) находятся в пакете, определённом префиксом.
- См. также:
- Значения константных полей
Методы
invoke
Object invoke(Remote obj,
Method method,
Object[] params,
long opnum)
throws Exception Вызвать метод. Эта форма делегирования вызова метода ссылке позволяет ссылке организовать подключение к удалённому хосту, маршаллировать некоторое представление метода и параметров, а затем передать вызов метода удалённому хосту. Этот метод либо возвращает результат вызова метода на удалённом объекте, который находится на удалённом хосте, либо выбрасывает исключение RemoteException, если вызов не удался, или исключение прикладного уровня, если удалённый вызов сгенерировал исключение.
- Параметры:
-
obj- объект, содержащий RemoteRef (например, RemoteStub для объекта). -
method- вызываемый метод -
params- список параметров -
opnum- хэш, который может быть использован для представления метода - Возвращает:
- результат удалённого вызова метода
- Выбрасывает:
-
Exception- если возникло какое-либо исключение во время удалённого вызова метода - С:
- 1.2
newCall
@Deprecated
RemoteCall newCall(RemoteObject obj,
Operation[] op,
int opnum,
long hash)
throws RemoteException Устаревший. Заглушки стиля 1.2 больше не используют этот метод. Вместо использования последовательности вызовов методов к удалённой ссылке заглушки (newCall, invoke, и done), заглушка использует единственный метод, invoke(Remote, Method, Object[],
int), на удалённой ссылке для выполнения маршаллирования параметров, выполнения удалённого метода и расмаршаллирования возвращаемого значения.
Создаёт подходящий объект вызова для нового удалённого вызова метода на этом объекте. Передача массива операций и индекса позволяет генератору заглушек назначить индексы операций и интерпретировать их. Удалённой ссылке может потребоваться операция для кодирования в вызове.
- Параметры:
-
obj- удалённая заглушка, через которую совершать вызов -
op- массив операций заглушки -
opnum- номер операции -
hash- хэш интерфейса заглушки/скелета - Возвращает:
- объект вызова, представляющий удалённый вызов
- Выбрасывает:
-
RemoteException- если не удалось инициировать новый удалённый вызов - С:
- JDK1.1
- См. также:
invoke(Remote,java.lang.reflect.Method,Object[],long)
invoke
@Deprecated
void invoke(RemoteCall call)
throws Exception Устаревший. Заглушки стиля 1.2 больше не используют этот метод. Вместо использования последовательности вызовов методов к удалённой ссылке (newCall, invoke, и done), заглушка использует единственный метод, invoke(Remote, Method, Object[],
int), на удалённой ссылке для выполнения маршаллирования параметров, выполнения удалённого метода и расмаршаллирования возвращаемого значения.
Выполняет удалённый вызов. Invoke сгенерирует все "пользовательские" исключения, которые должны передаваться без перехвата заглушкой. Если во время удалённого вызова возникает какое-либо исключение, invoke должен позаботиться об очистке соединения перед генерацией "пользовательского" или удалённого исключения.
- Параметры:
-
call- объект, представляющий удалённый вызов - Выбрасывает:
-
Exception- если во время удалённого вызова метода возникает какое-либо исключение - С:
- JDK1.1
- См. также:
invoke(Remote,java.lang.reflect.Method,Object[],long)
done
@Deprecated
void done(RemoteCall call)
throws RemoteException Устаревший. Заглушки стиля 1.2 больше не используют этот метод. Вместо использования последовательности вызовов методов к удалённой ссылке (newCall, invoke, и done), заглушка использует единственный метод, invoke(Remote, Method, Object[],
int), на удалённой ссылке для выполнения маршаллирования параметров, выполнения удалённого метода и расмаршаллирования возвращаемого значения.
Позволяет удалённой ссылке очистить (или повторно использовать) соединение. Done должен вызываться только в случае успешного возврата invoke заглушке (без исключений).
- Параметры:
-
call- объект, представляющий удалённый вызов - Выбрасывает:
-
RemoteException- если при очистке вызова возникла удалённая ошибка - С:
- JDK1.1
- См. также:
invoke(Remote,java.lang.reflect.Method,Object[],long)
getRefClass
String getRefClass(ObjectOutput out)
Возвращает имя класса типа ссылки, который должен быть сериализован в поток 'out'.
- Параметры:
-
out- поток вывода, в который будет сериализована ссылка - Возвращает:
- имя класса (без квалификации пакета) типа ссылки
- С:
- JDK1.1
remoteHashCode
int remoteHashCode()
Возвращает хэш-код удалённого объекта. Две удалённые заглушки объектов, ссылающиеся на один и тот же удалённый объект, будут иметь одинаковый хэш-код (для поддержки удалённых объектов в качестве ключей в хэш-таблицах).
- Возвращает:
- хэш-код удалённого объекта
- С:
- JDK1.1
- См. также:
Hashtable
remoteEquals
boolean remoteEquals(RemoteRef obj)
Сравнивает два удалённых объекта на равенство. Возвращает boolean, указывающий, эквивалентен ли этот удалённый объект указанному объекту. Этот метод используется, когда удалённый объект хранится в хэш-таблице.
- Параметры:
-
obj- объект для сравнения - Возвращает:
- true, если эти объекты равны; false в противном случае.
- С:
- JDK1.1
- См. также:
Hashtable
remoteToString
String remoteToString()
Возвращает строку, представляющую ссылку на этот удалённый объект.
- Возвращает:
- строка, представляющая ссылку удалённого объекта
- С:
- JDK1.1
© 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.