public final class CdaFilter extends DefaultLinkedDirtyable implements Copyable, java.lang.Comparable
Comparable
interface and the
toString()
implementation are the key parts of this
class.Modifier and Type | Field and Description |
---|---|
static int |
CLASS |
static int |
EXCLUDE |
static int |
INCLUDE |
static int |
PACKAGE_TREE |
static int |
SINGLE_PACKAGE |
Constructor and Description |
---|
CdaFilter() |
CdaFilter(HashStructure hash) |
CdaFilter(int type,
int scope,
java.lang.String name) |
Modifier and Type | Method and Description |
---|---|
int |
compareTo(java.lang.Object o)
Sorts first by scope.
|
java.lang.Object |
copyTo(java.lang.Object object)
Copies the internal state of
this object to the
specified copy . |
protected void |
copyToImpl(CdaFilter copy) |
boolean |
equals(java.lang.Object o) |
protected boolean |
equalsImpl(CdaFilter filter) |
static CdaFilter |
excludeClass(java.lang.String name)
Factory method.
|
static CdaFilter |
excludePackageTree(java.lang.String name)
Factory method.
|
static CdaFilter |
excludeSinglePackage(java.lang.String name)
Factory method.
|
HashStructure |
getHashStructure() |
java.lang.String |
getName() |
int |
getScope() |
int |
getType() |
static CdaFilter |
includeClass(java.lang.String name)
Factory method.
|
static CdaFilter |
includePackageTree(java.lang.String name)
Factory method.
|
static CdaFilter |
includeSinglePackage(java.lang.String name)
Factory method.
|
void |
setName(java.lang.String name) |
void |
setScope(int scope) |
void |
setType(int type) |
java.lang.String |
toString() |
compare, linkContainingDirtyable, linkEmbeddedDirtyable, linkEmbeddedDirtyable, linkEmbeddedDirtyables, markDirty, setOwner, unlinkContainingDirtyable, unlinkEmbeddedDirtyable, unlinkEmbeddedDirtyable, unlinkEmbeddedDirtyables
dirtyLabel, dirtyLabel, dirtyLabel, isDirty
public static final int INCLUDE
public static final int EXCLUDE
public static final int PACKAGE_TREE
public static final int SINGLE_PACKAGE
public static final int CLASS
public CdaFilter()
public CdaFilter(HashStructure hash)
public CdaFilter(int type, int scope, java.lang.String name)
public static CdaFilter includePackageTree(java.lang.String name)
public static CdaFilter excludePackageTree(java.lang.String name)
public static CdaFilter includeSinglePackage(java.lang.String name)
public static CdaFilter excludeSinglePackage(java.lang.String name)
public static CdaFilter includeClass(java.lang.String name)
public static CdaFilter excludeClass(java.lang.String name)
public java.lang.Object copyTo(java.lang.Object object)
Copyable
this
object to the
specified copy
. If copy
is
null
, then this method should create a new instance
of this
class and proceed to copy the internal state
to the newly created object. Generally, only the persistent
state of the object should be copied, but whether or not it is
appropriate to copy transient properties is at the discretion
of the individual implementor.
Regardless of whether the copy occurs to an existing object or to
a newly created object, the return value is object to which
this
object's state was copied.
There is a standard implementation pattern for the
copyTo
method that helps avoid problems that arise
when a Copyable
object is subclassed. The pattern
is:
The parameter passed into thepublic Object copyTo( Object target ) { final <this_class> copy = target != null ? (<this_class>) target : new <this_class>(); copyToImpl( copy ); return copy; } protected final void copyToImpl( <this_class> copy ) { super.copyToImpl( copy ); // if necessary // put code here for copying the properties of <this_class> }
copyToImpl
method is
the same type of this
class. The responsibility of
copyToImpl
is to copy the state of this
class through direct access of the fields. The
copyToImpl
method should not use getters and setters
since these may be overridden, causing the state of
this
class to be incompletely copied.copyTo
in interface Copyable
object
- The target object to which the state of
this
object should be copied. If target
is null
, then the copyTo
method will
return a new instance of this
class.this
object was copied. If the target
was
non-null
, then the return value is the same as the
target
object that was passed in; otherwise, the
return value is a new instance of this
class.protected final void copyToImpl(CdaFilter copy)
public int compareTo(java.lang.Object o)
PACKAGE_TREE
, then the name determines the ordering.
Otherwise, sorting is attempted second by type. If the types
are then same, then the name determines the ordering. This
produces an ordering that is consistent with the order in which
the filters are applied before, during, and after dependency
analysis.compareTo
in interface java.lang.Comparable
compareTo
in class DefaultLinkedDirtyable
public int getType() throws AttributeMarker
AttributeMarker
public void setType(int type)
public int getScope() throws AttributeMarker
AttributeMarker
public void setScope(int scope)
public java.lang.String getName() throws AttributeMarker
AttributeMarker
public void setName(java.lang.String name)
public HashStructure getHashStructure()
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
protected final boolean equalsImpl(CdaFilter filter)
public java.lang.String toString()
toString
in class java.lang.Object