com.sun.tools.xjc.model.nav
Class NParameterizedType

java.lang.Object
  extended by com.sun.tools.xjc.model.nav.NParameterizedType
All Implemented Interfaces:
NClass, NType

final class NParameterizedType
extends Object
implements NClass

Parameterized type.


Field Summary
(package private)  NType[] args
           
(package private)  NClass rawType
           
 
Constructor Summary
NParameterizedType(NClass rawType, NType[] args)
           
 
Method Summary
 String fullName()
          Human readable name of this type.
 boolean isAbstract()
           
 boolean isBoxedType()
          Returns true iff this type represents a class that has a unboxed form.
 com.sun.codemodel.JClass toType(Outline o, Aspect aspect)
          Returns the representation of this type in code model.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

rawType

final NClass rawType

args

final NType[] args
Constructor Detail

NParameterizedType

NParameterizedType(NClass rawType,
                   NType[] args)
Method Detail

toType

public com.sun.codemodel.JClass toType(Outline o,
                                       Aspect aspect)
Description copied from interface: NType
Returns the representation of this type in code model.

This operation requires the whole model to be built, and hence it takes Outline.

Under some code generation strategy, some bean classes are considered implementation specific (such as impl.FooImpl class) These classes always have accompanying "exposed" type (such as the Foo interface).

For such Jekyll and Hyde type, the aspect parameter determines which personality is returned.

Specified by:
toType in interface NClass
Specified by:
toType in interface NType
aspect - If Aspect.IMPLEMENTATION, this method returns the implementation specific class that this type represents. If Aspect.EXPOSED, this method returns the publicly exposed type that this type represents. For ordinary classes, the aspect parameter is meaningless.

isAbstract

public boolean isAbstract()
Specified by:
isAbstract in interface NClass

isBoxedType

public boolean isBoxedType()
Description copied from interface: NType
Returns true iff this type represents a class that has a unboxed form. For example, for String this is false, but for Integer this is true.

Specified by:
isBoxedType in interface NType

fullName

public String fullName()
Description copied from interface: NType
Human readable name of this type.

Specified by:
fullName in interface NType