public final class TechId
extends java.lang.Object
implements java.lang.Comparable
TechId class is a unique identifier for representing a
technology in the system. Each instance wraps the display attributes
for representing the technology in the user interface.| Modifier and Type | Method and Description |
|---|---|
boolean |
addDependency(TechId dependency)
Ensures that this technology depends on another technology.
|
int |
compareTo(java.lang.Object object)
Compares two
TechId instances for ordering. |
static TechId |
createTechId(java.lang.String key,
java.lang.String name,
java.lang.String description)
Factory method for generating a new technology id.
|
static TechId |
createTechId(java.lang.String key,
java.lang.String name,
java.lang.String description,
boolean obsolete)
Factory method for generating a new technology id.
|
boolean |
dependsOn(TechId techId)
Returns
true if this technology depends on the specified
technology, either directly or indirectly. |
java.util.Set |
getDependencies()
Returns the collection of technologies upon which this technology
directly depends; if this technology does not depend upon other
technologies, the collection is empty.
|
java.lang.String |
getDescription()
Returns the display description for this technology.
|
java.lang.String |
getKey()
Returns the key for this technology.
|
java.lang.String |
getName()
Returns the display name for this technology.
|
boolean |
isInScope(TechnologyScope scope)
Returns
true if this technology exists in the specified
TechnologyScope. |
boolean |
isObsolete()
Returns
true if this technology is marked as obsolete, and
should not be added to new projects (and should be migrated out of old
projects) |
boolean |
isVisible()
Returns
true if this technology should be visible in the
user interface, otherwise returns false. |
boolean |
removeDependency(TechId dependency)
Removes a dependent technology from the this technology, if the
dependency exists.
|
java.lang.String |
toString()
Returns a short description of the technology.
|
public java.lang.String getName()
public java.lang.String getDescription()
public java.lang.String getKey()
public boolean addDependency(TechId dependency)
true if the specified technology was a new dependency.true if the dependencies changed as a result of
the callpublic boolean removeDependency(TechId dependency)
true if this technology
contained the specified dependency.true if the dependencies changed as a result of
the callpublic java.util.Set getDependencies()
TechIds upon which this technology is
dependentpublic boolean isVisible()
true if this technology should be visible in the
user interface, otherwise returns false.public boolean isObsolete()
true if this technology is marked as obsolete, and
should not be added to new projects (and should be migrated out of old
projects)public boolean isInScope(TechnologyScope scope)
true if this technology exists in the specified
TechnologyScope. If this is a pseudo-technology, then the
PseudoTechnologyCallback may be queried to determine if this
technology is in the specified scope.scope - the current technology scope.public boolean dependsOn(TechId techId)
true if this technology depends on the specified
technology, either directly or indirectly.techId - the technologytrue if this technology depends on the specified
technologypublic int compareTo(java.lang.Object object)
TechId instances for ordering.compareTo in interface java.lang.Comparablejava.lang.ClassCastException - if the argument is not another
TechId instance.public java.lang.String toString()
toString in class java.lang.Objectpublic static TechId createTechId(java.lang.String key, java.lang.String name, java.lang.String description)
key - a well-defined string that identifies the technology
programmaticallyname - the translatable name for this technology, for display in
the user interface.description - the translatable description for this technology,
for display in the user interface.public static TechId createTechId(java.lang.String key, java.lang.String name, java.lang.String description, boolean obsolete)
key - a well-defined string that identifies the technology
programmaticallyname - the translatable name for this technology, for display in
the user interface.description - the translatable description for this technology,
for display in the user interface.