public interface Exporter
Details of the export and unexport behavior, including the communication protocols used for remote invocation and additional remote invocation semantics, are defined by the particular implementation of this interface.
| Modifier and Type | Method and Description |
|---|---|
Remote |
export(Remote impl)
Exports the specified remote object and returns a proxy that can be used to invoke remote
methods on the exported remote object.
|
boolean |
unexport(boolean force)
Unexports the remote object that was exported by this
Exporter such that it will
no longer receive remote method invocations that were made possible as a result of exporting
it with this Exporter. |
Remote export(Remote impl) throws ExportException
Exporter instance.
The returned proxy implements an implementation-specific set of remote interfaces of the remote object and may also implement additional implementation-specific interfaces.
A remote interface is an interface that extends the interface java.rmi.Remote
and whose methods each declare at least one exception whose type is
java.rmi.RemoteException or one of its superclasses.
impl - a remote object to exportExportException - if a problem occurs exporting the objectSecurityException - if a SecurityException occurs exporting the
objectNullPointerException - if impl is nullIllegalStateException - if an object has already been exported with this
Exporter instanceboolean unexport(boolean force)
Exporter such that it will
no longer receive remote method invocations that were made possible as a result of exporting
it with this Exporter. The unexport operation may not occur if the
force argument is false. This method must only be invoked after the
export method has been invoked on this Exporter instance to export
a remote object successfully.
This method returns true if upon return, the remote object is no longer
exported with this Exporter, and false if the remote object remains
exported with this Exporter. This method will always return true
if it has returned true previously.
The force parameter serves to indicate whether or not the caller desires the
unexport to occur even if there are known remote calls pending or in progress to the remote
object that were made possible by this Exporter:
force is true, then the remote object will be forcibly
unexported even if there are remote calls pending or in progress, and this method will return
true.
force is false, then this acts as a hint to the
implementation that the remote object should not be unexported if there are known remote
calls pending or in progress, and this method will either unexport the remote object and
return true or not unexport the remote object and return false. If
the implementation detects that there are indeed remote calls pending or in progress, then it
should return false; otherwise, it must return true. If the
implementation does not support being able to unexport conditionally based on knowledge of
remote calls pending or in progress, then it must implement this method as if
force were always true. If the remote object is unexported as a result of this method, then the implementation may (and should, if possible) prevent remote calls in progress from being able to communicate their results successfully.
force - if true, the remote object will be unexported even if there are
remote calls pending or in progress; if false, the remote object
may only be unexported if there are no known remote calls pending or in
progresstrue if the remote object is unexported when this method returns and
false otherwiseIllegalStateException - if an object has not been exported with this
Exporter instanceCopyright © GigaSpaces.