|
UDK 3.2.7 Java API Reference | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
com.sun.star.uno
Class Type
java.lang.Object com.sun.star.uno.Type
public class Type
- extends Object
Represents the UNO built-in type TYPE
.
The UNO type is not directly mapped to java.lang.Class
for at
least two reasons. For one, some UNO types (like UNSIGNED
SHORT
) do not have a matching Java class. For another, it can be
necessary to describe a type which is unknown to the Java runtime system
(for example, for delaying the need of a class, so that it is possible to
generate it on the fly.)
A Type
is uniquely determined by its type class (a
TypeClass
) and its type name (a String
); these two
will never be null
. A Type
may have an additional
"z class" (a java.lang.Class
), giving a Java class type that
corresponds to the UNO type. Also, a Type
can cache a type
description (a com.sun.star.uno.ITypeDescription
), which can be
computed and set by TypeDescription.getTypeDescription
.
Field Summary | |
---|---|
protected Class |
_class
|
protected ITypeDescription |
_iTypeDescription
|
protected TypeClass |
_typeClass
|
protected String |
_typeName
|
static Type |
ANY
|
static Type |
BOOLEAN
|
static Type |
BYTE
|
static Type |
CHAR
|
static Type |
DOUBLE
|
static Type |
FLOAT
|
static Type |
HYPER
|
static Type |
LONG
|
static Type |
SHORT
|
static Type |
STRING
|
static Type |
TYPE
|
static Type |
UNSIGNED_HYPER
|
static Type |
UNSIGNED_LONG
|
static Type |
UNSIGNED_SHORT
|
static Type |
VOID
|
Constructor Summary | |
---|---|
Type()
Constructs a new Type which defaults to VOID . |
|
Type(Class zClass)
Constructs a new Type from the given
java.lang.Class . |
|
Type(Class zClass,
boolean alternative)
Constructs a new Type from the given
java.lang.Class , handling ambiguous cases. |
|
Type(ITypeDescription typeDescription)
Constructs a new Type from the given type description. |
|
Type(String typeName)
Constructs a new Type with the given type name. |
|
Type(String typeName,
TypeClass typeClass)
Constructs a new Type with the given type class and type
name. |
|
Type(TypeClass typeClass)
Constructs a new Type with the given type class. |
Method Summary | |
---|---|
boolean |
equals(Object obj)
|
TypeClass |
getTypeClass()
Gets the type class. |
ITypeDescription |
getTypeDescription()
Gives the type description of this type. |
String |
getTypeName()
Gets the type name. |
Class |
getZClass()
Gets the Java class. |
int |
hashCode()
|
boolean |
isSupertypeOf(Type type)
Determines whether this UNO type is a supertype of another UNO type. |
void |
setTypeDescription(ITypeDescription typeDescription)
Sets the type description for this type. |
String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
VOID
public static final Type VOID
CHAR
public static final Type CHAR
BOOLEAN
public static final Type BOOLEAN
BYTE
public static final Type BYTE
SHORT
public static final Type SHORT
UNSIGNED_SHORT
public static final Type UNSIGNED_SHORT
LONG
public static final Type LONG
UNSIGNED_LONG
public static final Type UNSIGNED_LONG
HYPER
public static final Type HYPER
UNSIGNED_HYPER
public static final Type UNSIGNED_HYPER
FLOAT
public static final Type FLOAT
DOUBLE
public static final Type DOUBLE
STRING
public static final Type STRING
TYPE
public static final Type TYPE
ANY
public static final Type ANY
_typeClass
protected TypeClass _typeClass
_typeName
protected String _typeName
_class
protected Class _class
_iTypeDescription
protected ITypeDescription _iTypeDescription
Constructor Detail |
---|
Type
public Type()
- Constructs a new
Type
which defaults toVOID
.
Type
public Type(String typeName, TypeClass typeClass)
- Constructs a new
Type
with the given type class and type name.- Parameters:
typeName
- the type name. Must not benull
.typeClass
- the type class. Must not benull
, and must match thetypeName
(for example, it is illegal to combine atypeName
of"void"
with atypeClass
ofBOOLEAN
).
Type
public Type(Class zClass)
- Constructs a new
Type
from the givenjava.lang.Class
.This is equivalent to
Type(zClass, false)
.- Parameters:
zClass
- the Java class of this type. Must not benull
.
Type
public Type(Class zClass, boolean alternative)
- Constructs a new
Type
from the givenjava.lang.Class
, handling ambiguous cases.In certain cases, one Java class corresponds to two UNO types (e.g., the Java class
short[].class
corresponds to both a sequence ofSHORT and a sequence of UNSIGNED SHORT
in UNO). In such ambiguous cases, the parameteralternative
controls which UNO type is chosen:- If the Java type is (an array type with element type)
short
orjava.lang.Short
: Ifalternative
isfalse
, the chosen UNO type is (a sequence type with element type)SHORT
. Ifalternative
istrue
, the chosen UNO type is (a sequence type with element type)UNSIGNED SHORT
. - If the Java type is (an array type with element type)
int
orjava.lang.Integer
: Ifalternative
isfalse
, the chosen UNO type is (a sequence type with element type)LONG
. Ifalternative
istrue
, the chosen UNO type is (a sequence type with element type)UNSIGNED LONG
. - If the Java type is (an array type with element type)
long
orjava.lang.Long
: Ifalternative
isfalse
, the chosen UNO type is (a sequence type with element type)HYPER
. Ifalternative
istrue
, the chosen UNO type is (a sequence type with element type)UNSIGNED HYPER
. - If the Java type is (an array type with element type)
java.lang.Object
: Ifalternative
isfalse
, the chosen UNO type is (a sequence type with element type)ANY
. Ifalternative
istrue
, the chosen UNO type is (a sequence type with element type)com.sun.star.uno.XInterface
.
In all other cases, the value of
alternative
is ignored.This constructor cannot be used to create
Type
instances that represent (sequences of) instantiated polymorphic struct types.- Parameters:
zClass
- the Java class of this type; must not benull
alternative
- controls which UNO type to choose in case of ambiguities- Since:
- UDK 3.2.0
- If the Java type is (an array type with element type)
Type
public Type(ITypeDescription typeDescription)
- Constructs a new
Type
from the given type description.- Parameters:
typeDescription
- a type description. Must not benull
.
Type
public Type(String typeName)
- Constructs a new
Type
with the given type name.- Parameters:
typeName
- the name of this type; must not benull
.
Type
public Type(TypeClass typeClass)
- Constructs a new
Type
with the given type class.- Parameters:
typeClass
- the type class of this type; must not benull
. Only type classes for simple types are allowed here.- Throws:
IllegalArgumentException
- if the giventypeClass
is not simple (for example, a struct or an interface type). This constructor could not find out the type name in such a case.
Method Detail |
---|
getTypeClass
public TypeClass getTypeClass()
- Gets the type class.
- Returns:
- the type class. Will never be
null
, but might beUNKNOWN
.
getTypeName
public String getTypeName()
- Gets the type name.
- Returns:
- the type name; will never be
null
getZClass
public Class getZClass()
- Gets the Java class.
- Returns:
- the type name; may be
null
in extreme situations (inconsistentTypeClass
, error loading a class)
getTypeDescription
public ITypeDescription getTypeDescription()
- Gives the type description of this type.
- Returns:
- the type description; may be
null
setTypeDescription
public void setTypeDescription(ITypeDescription typeDescription)
- Sets the type description for this type.
- Parameters:
typeDescription
- the type description
isSupertypeOf
public boolean isSupertypeOf(Type type)
- Determines whether this UNO type is a supertype of another UNO type.
UNO only defines the following supertype relations:
(1) A struct type t1 is a supertype of a struct type t2, if either t1
and t2 are the same, or t1 is a direct or indirect parent of t2.
(2) An exception type t1 is a supertype of an exception type t2, if
either t1 and t2 are the same, or t1 is a direct or indirect parent
of t2.
(3) An interface type t1 is a supertype of an interface type t2, if
either t1 and t2 are the same, or t1 is a direct or indirect parent
of t2.
Following the conventions of the Java UNO language binding,
com.sun.star.uno.Exception is not considered a supertype of
com.sun.star.uno.RuntimeException or any exception type derived from
com.sun.star.uno.RuntimeException.
- Parameters:
type
- some Type- Returns:
- true if this type is a supertype of the given type
- Since:
- UDK 3.2.0
equals
public boolean equals(Object obj)
hashCode
public int hashCode()
toString
public String toString()
|
UDK 3.2.7 Java API Reference | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |