com.sun.star.uno
public interface IEnvironment
Deprecated: As of UDK 3.2, this interface is deprecated, without offering a replacement.
The interface implemented by UNO environments.With this interface, objects can be registered at and revoked from an environment.
See Also: IBridge IQueryInterface
Method Summary | |
---|---|
Object | getContext()
Gets the context of this environment.
|
String | getName()
Gets the name of this environment.
|
Object | getRegisteredInterface(String oid, Type type)
Retrieves a registered object, specified by OID and UNO interface type.
|
String | getRegisteredObjectIdentifier(Object object)
Retrieves the OID for a registered object.
|
void | list()
Lists the registered objects to System.out .
|
Object | registerInterface(Object object, String[] oid, Type type)
Registers one UNO interface facet of an object.
|
void | revokeInterface(String oid, Type type)
Explicitly revokes a UNO interface facet.
|
Returns: the context of this environment
Returns: the name of this environment
Parameters: oid the OID of the object to retrieve; must be non-null type the UNO interface type of the object to retrieve. This argument must be non-null, and must denote a UNO interface type.
Returns: the registered object, or null if none is found
Parameters: object a registered object; must be non-null
Returns: the OID of the object
; will never be null
System.out
.
This is for debug purposes.
Such an object will typically be one of three things:
The object actually registered may differ from the specified
object
that is passed as an argument. This enables an
environment to work in a multi-threaded scenario, where two threads can
call registerInterface
for the same combination of
oid
and type
at the same time; the race
condition is solved by letting one of the calls register its argument
object
, ignoring the argument object
of the
other call, and letting both calls return the same
object
.
The registered object is held only weakly by the environment. After a
call to registerInterface
, a call to
getRegisteredInterface
only succeeds as long as the
registered object is still strongly reachable, and the registered object
has not been explicitly revoked by calling
revokeInterface
.
Parameters: object the object to register; must be non-null oid in-out parameter containing the OID of object
.
This must be a non-null reference to an array of length at least one;
the zeroth element is used to pass the argument in and out. If the
zeroth element is null on input, the OID will be computed and passed
out (that is, the zeroth element will never be null upon normal
return). type the UNO interface type to register. This argument must be
non-null, and must denote a UNO interface type. The given
object
should implement this type
.
Returns: the registered object (may differ from the object
passed in); will never be null
Calls to registerInterface
and
revokeInterface
must be paired. A facet is only removed
from the environment when it has been revoked as often as it has been
registered. This may change in the future, so that a facet would be
removed upon the first call to revokeInterface
(and calls to
revokeInterface
would no longer be necessary if the calling
code does not want to control the temporal extent of the
registration).
It is not an error if the specified facet is not registered at this environment (either because no corresponding object has ever been registered, or it has been explicitly revoked, or it is no longer strongly reachable). In such a case, this method simply does nothing.
Parameters: oid the OID of the object to revoke; must be non-null type the UNO interface type of the object to revoke. This argument must be non-null, and must denote a UNO interface type.