Class InheritanceData
java.lang.Object
org.apache.tapestry5.internal.plastic.InheritanceData
Used to track which methods are implemented by a base class, which is often needed when transforming
a subclass.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addInterface
(String name) void
Adds a new instance method.createChild
(String packageName) Returns a new MethodBundle that represents the methods of a child class of this bundle.boolean
isImplemented
(String name, String desc) Returns true if this class or a transformed parent class contains an implementation of, or abstract placeholder for, the method.boolean
isInterfaceImplemented
(String name) Returns true if the class represented by this data, or any parent data, implements the named interface.boolean
isOverride
(String name, String desc) Returns true if the method is an override of a base class methodboolean
Is this bundle for a transformed class, or for a base class (typically Object)?Returns the names of any methods in this bundle, or from any parent bundles.
-
Constructor Details
-
InheritanceData
-
-
Method Details
-
isTransformed
Is this bundle for a transformed class, or for a base class (typically Object)?- Returns:
- true if this bundle is for transformed class, false otherwise
-
createChild
Returns a new MethodBundle that represents the methods of a child class of this bundle. The returned bundle will always be transformed.- Parameters:
packageName
- the package that the child class will be created in- Returns:
- new method bundle
-
addMethod
Adds a new instance method. Only non-private methods should be added (that is, methods which might be overridden in subclasses). This can later be queried to see if any base class implements the method.- Parameters:
name
- name of methoddesc
- describes the parameters and return value of the methodsamePackageOnly
- whether the method can only be overridden in classes that are in the same package
-
isImplemented
Returns true if this class or a transformed parent class contains an implementation of, or abstract placeholder for, the method.- Parameters:
name
- method namedesc
- method descriptor- Returns:
- true if this class or a base class implements the method (including abstract methods)
-
isOverride
Returns true if the method is an override of a base class method- Parameters:
name
- method namedesc
- method descriptor- Returns:
- true if a base class implements the method (including abstract methods)
-
isInterfaceImplemented
Returns true if the class represented by this data, or any parent data, implements the named interface. -
addInterface
-
methodNames
Returns the names of any methods in this bundle, or from any parent bundles.
-