|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjava.rmi.server.RemoteObject
java.rmi.server.RemoteServer
java.rmi.activation.Activatable
public abstract class Activatable
Activatable 类为需要能随时间持久访问并能由系统激活的远程对象提供支持。
对于构造方法和静态 exportObject 方法,将导出的远程对象的 stub 可以像 UnicastRemoteObject 中所描述的那样获得。
| 字段摘要 |
|---|
| 从类 java.rmi.server.RemoteObject 继承的字段 |
|---|
ref |
| 构造方法摘要 | |
|---|---|
protected |
Activatable(ActivationID id,
int port)
构造方法用于在指定端口上激活/导出对象。 |
protected |
Activatable(ActivationID id,
int port,
RMIClientSocketFactory csf,
RMIServerSocketFactory ssf)
构造方法用于在指定端口上激活/导出对象。 |
protected |
Activatable(String location,
MarshalledObject data,
boolean restart,
int port)
构造方法用于注册和在指定端口(如果 port=0,则选择匿名端口)上导出对象。 |
protected |
Activatable(String location,
MarshalledObject data,
boolean restart,
int port,
RMIClientSocketFactory csf,
RMIServerSocketFactory ssf)
构造方法用于注册对象和在指定端口(如果 port=0,则选择匿名端口)上导出对象。 |
| 方法摘要 | |
|---|---|
static Remote |
exportObject(Remote obj,
ActivationID id,
int port)
导出可激活远程对象到 RMI 运行时来使该对象能接收传入的调用。 |
static Remote |
exportObject(Remote obj,
ActivationID id,
int port,
RMIClientSocketFactory csf,
RMIServerSocketFactory ssf)
导出可激活远程对象到 RMI 运行时来使该对象能接收传入的调用。 |
static ActivationID |
exportObject(Remote obj,
String location,
MarshalledObject data,
boolean restart,
int port)
此 exportObject 方法可以通过一个未扩展 Activatable 类的“可激活”对象显式地调用,为两个目的 a) 注册对象的激活描述符,该描述符通过激活系统(因此该对象能被激活)从提供的 location 和 data 构造,以及 b) 在指定端口上(如果 port=0,则选择匿名端口)导出远程对象 obj。 |
static ActivationID |
exportObject(Remote obj,
String location,
MarshalledObject data,
boolean restart,
int port,
RMIClientSocketFactory csf,
RMIServerSocketFactory ssf)
此 exportObject 方法可经通过一个未扩展 Activatable 类的“可激活”对象显式地调用,为两个目的 a)注册对象的激活描述符,该描述符通过激活系统(因此该对象能被激活)从提供的 location 和 data 构造,以及 b) 在指定端口上(如果 port=0,则选择匿名端口)导出远程对象 obj。 |
protected ActivationID |
getID()
返回对象的激活标识符。 |
static boolean |
inactive(ActivationID id)
通知系统具有相应激活 id 的对象当前是不活动的。 |
static Remote |
register(ActivationDesc desc)
为可激活远程对象注册一个对象描述符,以便它可以按需激活。 |
static boolean |
unexportObject(Remote obj,
boolean force)
从 RMI 运行时移除远程对象 obj。 |
static void |
unregister(ActivationID id)
为与 id 关联的激活描述符撤消前面的注册。 |
| 从类 java.rmi.server.RemoteServer 继承的方法 |
|---|
getClientHost, getLog, setLog |
| 从类 java.rmi.server.RemoteObject 继承的方法 |
|---|
equals, getRef, hashCode, toString, toStub |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| 构造方法详细信息 |
|---|
protected Activatable(String location,
MarshalledObject data,
boolean restart,
int port)
throws ActivationException,
RemoteException
location - 此对象的类的位置data - 对象的初始化数据port - 对象导出的端口(如果 port=0,则使用匿名端口)restart - 如果为 true,则在一次意外崩溃之后,如果激活器被重启或者对象激活组被重启,则该对象也会被重启(激活);如果为 false,则对象只能按需激活。指定 restart 为 true,不强制对新注册的对象立即进行一次初始激活操作;初始激活是延后的。
ActivationException - 如果对象注册失败。
RemoteException - 如果下面之一失败:a) 通过激活系统注册对象 b) 导出对象到 RMI 运行时。
protected Activatable(String location,
MarshalledObject data,
boolean restart,
int port,
RMIClientSocketFactory csf,
RMIServerSocketFactory ssf)
throws ActivationException,
RemoteException
此类的具体子类必须调用此构造方法来在 initial 构造中注册和导出对象。作为可激活对象构造的副作用,远程对象由激活系统来“注册”并“导出”(如果 port=0,则在匿名端口上)到 RMI 运行时,以便它能接受自客户机传入的调用。
location - 此对象的类的位置data - 对象的初始化数据restart - 如果为 true,则在一次意外崩溃之后,如果激活器被重启或者对象激活组被重启,则该对象也会被重启(激活);如果为 false,则只能按需激活。指定 restart 为 true,不强制对新注册的对象立即进行一次初始激活操作;初始激活是延后的。port - param port 对象导出的端口(如果 port=0,则使用匿名端口)csf - 进行远程对象调用的客户端套接字工厂ssf - 接收远程调用的服务器端套接字工厂
ActivationException - 如果注册失败。
RemoteException - 如果下面之一失败:a) 通过激活系统注册对象 b) 导出对象到 RMI 运行时。
protected Activatable(ActivationID id,
int port)
throws RemoteException
ActivationID),以及
MarshalledObject)。
当此类的具体子类通过上述的两参数构造方法激活 时,它必须调用此构造方法。作为构造的副作用,远程对象被“导出”到 RMI 运行时(在指定 port 上),并且可用于接受从客户端传入的调用。
id - 对象的激活标识符port - 对象导出的端口号
RemoteException - 如果导出对象到 RMI 运行时失败
protected Activatable(ActivationID id,
int port,
RMIClientSocketFactory csf,
RMIServerSocketFactory ssf)
throws RemoteException
ActivationID),以及
MarshalledObject)。
当此类的具体子类通过上述的两参数构造方法激活 时,它必须调用此构造方法。作为构造的副作用,远程对象被“导出”到 RMI 运行时(在指定 port 上),并且可用于接受从客户端传入的调用。
id - 对象的激活标识符port - 对象导出的端口号csf - 进行远程对象调用的客户端套接字工厂ssf - 接收远程调用的服务器端套接字工厂
RemoteException - 如果导出对象到 RMI 运行时失败| 方法详细信息 |
|---|
protected ActivationID getID()
public static Remote register(ActivationDesc desc)
throws UnknownGroupException,
ActivationException,
RemoteException
desc - 对象的描述符
UnknownGroupException - 如果 desc 中的组 id 未使用激活系统注册
ActivationException - 如果激活系统未运行
RemoteException - 如果远程调用失败
public static boolean inactive(ActivationID id)
throws UnknownObjectException,
ActivationException,
RemoteException
id 的对象当前是不活动的。如果对象当前是活动的,则对象从 RMI 运行时“取消导出”(仅当没有任何挂起或者进程内调用),以便其无法再接收传入的调用。此调用通知此 VM 的 ActivationGroup,对象是不活动的,并依次通知其 ActivationMonitor。如果此调用成功完成,则对激活器的后续激活请求将导致对象被重新激活。如果对象被认为是活动的但是其自身已经取消导出,则此操作仍能成功。
id - 对象的激活标识符
UnknownObjectException - 如果对象未知(其可能已经是不活动的)
ActivationException - 如果组不活动
RemoteException - 如果调用通知监视器失败
public static void unregister(ActivationID id)
throws UnknownObjectException,
ActivationException,
RemoteException
id 关联的激活描述符撤消前面的注册。对象无法再通过该 id 被激活。
id - 对象的激活标识符
UnknownObjectException - 如果对象(id)未知
ActivationException - 如果激活系统未运行
RemoteException - 如果对激活系统的远程调用失败
public static ActivationID exportObject(Remote obj,
String location,
MarshalledObject data,
boolean restart,
int port)
throws ActivationException,
RemoteException
exportObject 方法可以通过一个未扩展 Activatable 类的“可激活”对象显式地调用,为两个目的 a) 注册对象的激活描述符,该描述符通过激活系统(因此该对象能被激活)从提供的 location 和 data 构造,以及 b) 在指定端口上(如果 port=0,则选择匿名端口)导出远程对象 obj。一旦对象被导出,它就可以接收传入的 RMI 调用。
如果 obj 扩展了 Activatable,此方法无需调用,因为第一个构造方法调用了此方法。
obj - 正被导出的对象location - 对象的代码基data - 对象的引导数据restart - 如果为 true,则在一次意外崩溃之后,如果激活器被重启或者对象激活组被重启,则该对象也会被重启(激活);如果为 false,则对象只能按需激活。指定 restart 为 true,不强制对新注册的对象立即进行一次初始激活操作;初始激活是延后的。port - 对象导出的端口号(如果 port=0,则使用匿名端口)
desc 所获得的激活标识符
ActivationException - 如果激活组是不活动的
RemoteException - 如果对象注册或者导出失败
public static ActivationID exportObject(Remote obj,
String location,
MarshalledObject data,
boolean restart,
int port,
RMIClientSocketFactory csf,
RMIServerSocketFactory ssf)
throws ActivationException,
RemoteException
exportObject 方法可经通过一个未扩展 Activatable 类的“可激活”对象显式地调用,为两个目的 a)注册对象的激活描述符,该描述符通过激活系统(因此该对象能被激活)从提供的 location 和 data 构造,以及 b) 在指定端口上(如果 port=0,则选择匿名端口)导出远程对象 obj。一旦对象被导出,它就可以接收传入的 RMI 调用。
如果 obj 扩展了 Activatable,此方法无需调用,因为第一个构造方法调用了此方法。
obj - 正被导出的对象location - 对象的代码基data - 对象的引导数据restart - 如果为 true,则在一次意外崩溃之后,如果激活器被重启或者对象激活组被重启,则该对象也会被重启(激活);如果为 false,则对象只能按需激活。指定 restart 为 true,不强制对新注册的对象立即进行一次初始激活操作;初始激活是延后的。port - 对象导出的端口号(如果 port=0,则使用匿名端口)csf - 进行远程对象调用的客户端套接字工厂ssf - 接收远程调用的服务器端套接字工厂
desc 所获得的激活标识符
ActivationException - 如果激活组是不活动的
RemoteException - 如果对象注册或者导出失败
public static Remote exportObject(Remote obj,
ActivationID id,
int port)
throws RemoteException
port 为零,则对象在匿名端口上导出。
在激活过程中,此 exportObject 方法应当由一个未扩展 Activatable 类的“可激活”对象显式地调用。对于确实扩展了 Activatable 类的对象,无需直接调用此方法;此方法通过上面的第二个构造方法调用(子类应当从其特殊的激活构造方法来调用)调用。
obj - 远程对象实现id - 对象的激活标识符port - 对象导出的端口号(如果 port=0,则使用匿名端口)
RemoteException - 如果对象导出失败
public static Remote exportObject(Remote obj,
ActivationID id,
int port,
RMIClientSocketFactory csf,
RMIServerSocketFactory ssf)
throws RemoteException
port 为零,则对象在匿名端口上导出。
在激活过程中,此 exportObject 方法应当由一个未扩展 Activatable 类的“可激活”对象显式地调用。对于确实扩展了 Activatable 类的对象,无需直接调用此方法;此方法通过上面的第二个构造方法调用(子类应当从其特殊的激活构造方法来调用)调用。
obj - 远程对象实现id - 对象的激活标识符port - 对象导出的端口号(如果 port=0,则使用匿名端口)csf - 进行远程对象调用的客户端套接字工厂ssf - 接收远程调用的服务器端套接字工厂
RemoteException - 如果对象导出失败
public static boolean unexportObject(Remote obj,
boolean force)
throws NoSuchObjectException
obj - 要取消导出的远程对象force - 如果为 true,则即使存在挂起或者进程内调用仍取消导出对象;如果为 false,则仅当不存在挂起或者进程内调用时才取消导出对象
NoSuchObjectException - 如果远程对象当前不被导出
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。