Dependency mapping for Java (Java code)
For each Dependency, ACS generates an import or implements statement.
Properties:
• If the Type property is set toDependency, ACS generates an import statement for the Class, Data Type or Interface at the source end of the Dependency. The target of the import statement is the Java package or class that is generated for the Package, Class, Data Type or Interface at the target end of the Dependency.
Example code:
import Package1.Class5;
public class Class4
{
}
| Reverser Notes: If when reverse engineering code the Reverser cannot model an import statement through a Dependency, the Reverser records the import statement through the tagged value of the Java Import Text tag definition (applied to a Class through the «Java Class» stereotype). |
• If the Type property is set to Interface Realization and the target is an Interface, ACS generates an implements statement for the Class or Data Type at the source end of the Dependency, unless the Java Implements Text tag definition (applied by the «Java Class» stereotype) has a value set. If the Java Implements Text tag definition has a value set, that value is generated as the implements statements and the Dependency is ignored. Note that the target of the implements statement is the Java interface that is generated for the Interface at the target end of the Dependency.
Example code:
import Package1.Class14;
public class Class6
implements Class14
{
}
| Reverser Notes: If when reverse engineering code the Reverser cannot model an implements statement through a Dependency of type Abstraction, the Reverser records the implements statements through the tagged value of the Java Implements Text tag definition (applied to a Class through the «Java Class» stereotype). |
Tag Definitions:
The following Tag Definitions are applied to a Generalization by the «Java Implements» stereotype:
• If the tagged value of the Java Actual Arguments tag definition has been set and the Dependency is specifying a Java Generic as the data type, ACS generates the value as the arguments that are passed to the generic type.
• If the tagged value of the Java Needs Qualified Type tag definition is set to TRUE, ACS generates the data type with a qualified name.