Package com.tngtech.archunit.core.domain
Class JavaPackage
java.lang.Object
com.tngtech.archunit.core.domain.JavaPackage
- All Implemented Interfaces:
HasDescription
,CanBeAnnotated
,HasAnnotations<JavaPackage>
,HasName
public final class JavaPackage extends java.lang.Object implements HasName, HasAnnotations<JavaPackage>
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
JavaPackage.ClassVisitor
static class
JavaPackage.Functions
static interface
JavaPackage.PackageVisitor
Nested classes/interfaces inherited from interface com.tngtech.archunit.core.domain.properties.CanBeAnnotated
CanBeAnnotated.Predicates, CanBeAnnotated.Utils
Nested classes/interfaces inherited from interface com.tngtech.archunit.core.domain.properties.HasName
HasName.AndFullName, HasName.Predicates
-
Method Summary
Modifier and Type Method Description void
accept(Predicate<? super JavaClass> predicate, JavaPackage.ClassVisitor visitor)
Traverses the package tree visiting each matching class.void
accept(Predicate<? super JavaPackage> predicate, JavaPackage.PackageVisitor visitor)
Traverses the package tree visiting each matching package.boolean
containsClass(JavaClass clazz)
boolean
containsClass(java.lang.Class<?> clazz)
boolean
containsClassWithFullyQualifiedName(java.lang.String className)
boolean
containsClassWithSimpleName(java.lang.String className)
boolean
containsPackage(java.lang.String packageName)
java.util.Set<JavaClass>
getAllClasses()
java.util.Set<JavaPackage>
getAllSubpackages()
java.util.Set<JavaPackage>
getAllSubPackages()
Deprecated.<A extends java.lang.annotation.Annotation>
AgetAnnotationOfType(java.lang.Class<A> type)
JavaAnnotation<JavaPackage>
getAnnotationOfType(java.lang.String typeName)
java.util.Set<? extends JavaAnnotation<JavaPackage>>
getAnnotations()
JavaClass
getClass(java.lang.Class<?> clazz)
java.util.Set<Dependency>
getClassDependenciesFromSelf()
java.util.Set<Dependency>
getClassDependenciesToSelf()
java.util.Set<JavaClass>
getClasses()
JavaClass
getClassWithFullyQualifiedName(java.lang.String className)
JavaClass
getClassWithSimpleName(java.lang.String className)
java.lang.String
getDescription()
java.lang.String
getName()
JavaPackage
getPackage(java.lang.String packageName)
java.util.Set<JavaPackage>
getPackageDependenciesFromSelf()
java.util.Set<JavaPackage>
getPackageDependenciesToSelf()
HasAnnotations<?>
getPackageInfo()
Optional<JavaPackage>
getParent()
java.lang.String
getRelativeName()
java.util.Set<JavaPackage>
getSubpackages()
java.util.Set<JavaPackage>
getSubPackages()
Deprecated.UsegetSubpackages()
instead.boolean
isAnnotatedWith(DescribedPredicate<? super JavaAnnotation<?>> predicate)
boolean
isAnnotatedWith(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
boolean
isAnnotatedWith(java.lang.String annotationTypeName)
boolean
isMetaAnnotatedWith(DescribedPredicate<? super JavaAnnotation<?>> predicate)
boolean
isMetaAnnotatedWith(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
boolean
isMetaAnnotatedWith(java.lang.String annotationTypeName)
java.lang.String
toString()
<A extends java.lang.annotation.Annotation>
Optional<A>tryGetAnnotationOfType(java.lang.Class<A> type)
Optional<JavaAnnotation<JavaPackage>>
tryGetAnnotationOfType(java.lang.String typeName)
Optional<? extends HasAnnotations<?>>
tryGetPackageInfo()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Method Details
-
getName
-
getRelativeName
- Returns:
- the (relative) name of this package, e.g.
lang
for packagejava.lang
-
getPackageInfo
-
tryGetPackageInfo
-
getAnnotations
@PublicAPI(usage=ACCESS) public java.util.Set<? extends JavaAnnotation<JavaPackage>> getAnnotations()- Specified by:
getAnnotations
in interfaceHasAnnotations<JavaPackage>
-
getAnnotationOfType
@PublicAPI(usage=ACCESS) public <A extends java.lang.annotation.Annotation> A getAnnotationOfType(java.lang.Class<A> type)- Specified by:
getAnnotationOfType
in interfaceHasAnnotations<JavaPackage>
-
getAnnotationOfType
@PublicAPI(usage=ACCESS) public JavaAnnotation<JavaPackage> getAnnotationOfType(java.lang.String typeName)- Specified by:
getAnnotationOfType
in interfaceHasAnnotations<JavaPackage>
-
tryGetAnnotationOfType
@PublicAPI(usage=ACCESS) public <A extends java.lang.annotation.Annotation> Optional<A> tryGetAnnotationOfType(java.lang.Class<A> type)- Specified by:
tryGetAnnotationOfType
in interfaceHasAnnotations<JavaPackage>
-
tryGetAnnotationOfType
@PublicAPI(usage=ACCESS) public Optional<JavaAnnotation<JavaPackage>> tryGetAnnotationOfType(java.lang.String typeName)- Specified by:
tryGetAnnotationOfType
in interfaceHasAnnotations<JavaPackage>
-
isAnnotatedWith
@PublicAPI(usage=ACCESS) public boolean isAnnotatedWith(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)- Specified by:
isAnnotatedWith
in interfaceCanBeAnnotated
-
isAnnotatedWith
- Specified by:
isAnnotatedWith
in interfaceCanBeAnnotated
-
isAnnotatedWith
@PublicAPI(usage=ACCESS) public boolean isAnnotatedWith(DescribedPredicate<? super JavaAnnotation<?>> predicate)- Specified by:
isAnnotatedWith
in interfaceCanBeAnnotated
-
isMetaAnnotatedWith
@PublicAPI(usage=ACCESS) public boolean isMetaAnnotatedWith(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)- Specified by:
isMetaAnnotatedWith
in interfaceCanBeAnnotated
-
isMetaAnnotatedWith
- Specified by:
isMetaAnnotatedWith
in interfaceCanBeAnnotated
-
isMetaAnnotatedWith
@PublicAPI(usage=ACCESS) public boolean isMetaAnnotatedWith(DescribedPredicate<? super JavaAnnotation<?>> predicate)- Specified by:
isMetaAnnotatedWith
in interfaceCanBeAnnotated
-
getParent
- Returns:
- the parent package, e.g.
java
for packagejava.lang
-
getClasses
- Returns:
- all classes directly contained in this package, no classes in sub-packages (compare
getAllClasses()
)
-
getAllClasses
- Returns:
- all classes contained in this package or any sub-package (compare
getClasses()
)
-
getSubpackages
- Returns:
- all (direct) sub-packages contained in this package, e.g.
[java.lang, java.io, ...]
for packagejava
(comparegetAllSubpackages()
)
-
getSubPackages
Deprecated.UsegetSubpackages()
instead. -
getAllSubpackages
- Returns:
- all sub-packages including nested sub-packages contained in this package,
e.g.
[java.lang, java.lang.annotation, java.util, java.util.concurrent, ...]
for packagejava
(comparegetSubpackages()
)
-
getAllSubPackages
Deprecated.UsegetAllSubpackages()
instead. -
containsClass
-
containsClass
- Parameters:
clazz
- a JavaClass
- Returns:
- true if this package (directly) contains a
JavaClass
equivalent to the suppliedClass
- See Also:
getClass(Class)
,containsClassWithFullyQualifiedName(String)
,containsClassWithSimpleName(String)
-
getClass
- Parameters:
clazz
- A Java class- Returns:
- the class if contained in this package, otherwise an Exception is thrown
- See Also:
containsClass(Class)
,getClassWithFullyQualifiedName(String)
,getClassWithSimpleName(String)
-
containsClassWithFullyQualifiedName
@PublicAPI(usage=ACCESS) public boolean containsClassWithFullyQualifiedName(java.lang.String className)- Parameters:
className
- fully qualified name of a Java class- Returns:
- true if this package (directly) contains a
JavaClass
with the given fully qualified name - See Also:
getClassWithFullyQualifiedName(String)
,containsClass(Class)
,containsClassWithSimpleName(String)
-
getClassWithFullyQualifiedName
@PublicAPI(usage=ACCESS) public JavaClass getClassWithFullyQualifiedName(java.lang.String className)- Parameters:
className
- fully qualified name of a Java class- Returns:
- the class if contained in this package, otherwise an Exception is thrown
- See Also:
containsClassWithFullyQualifiedName(String)
,getClass(Class)
,getClassWithSimpleName(String)
-
containsClassWithSimpleName
- Parameters:
className
- simple name of a Java class- Returns:
- true if this package (directly) contains a
JavaClass
with the given simple name - See Also:
getClassWithSimpleName(String)
,containsClass(Class)
,containsClassWithFullyQualifiedName(String)
-
getClassWithSimpleName
- Parameters:
className
- simple name of a Java class- Returns:
- the class if contained in this package, otherwise an Exception is thrown
- See Also:
containsClassWithSimpleName(String)
,getClass(Class)
,getClassWithFullyQualifiedName(String)
-
containsPackage
- Parameters:
packageName
- name of a package, may consist of several parts, e.g.some.subpackage
- Returns:
- true if this package contains the supplied (sub-) package
- See Also:
getPackage(String)
-
getPackage
- Parameters:
packageName
- name of a package, may consist of several parts, e.g.some.subpackage
- Returns:
- the (sub-) package with the given (relative) name; throws an exception if there is no such package contained
- See Also:
containsPackage(String)
-
getClassDependenciesFromSelf
- Returns:
- All
dependencies
that originate from aJavaClass
within this package to aJavaClass
outside of this package
-
getClassDependenciesToSelf
- Returns:
- All
dependencies
that originate from aJavaClass
outside of this package to aJavaClass
within this package
-
getPackageDependenciesFromSelf
-
getPackageDependenciesToSelf
-
accept
@PublicAPI(usage=ACCESS) public void accept(Predicate<? super JavaClass> predicate, JavaPackage.ClassVisitor visitor)Traverses the package tree visiting each matching class.- Parameters:
predicate
- determines which classes within the package tree should be visitedvisitor
- will receive each class in the package tree matching the given predicate- See Also:
accept(Predicate, PackageVisitor)
-
accept
@PublicAPI(usage=ACCESS) public void accept(Predicate<? super JavaPackage> predicate, JavaPackage.PackageVisitor visitor)Traverses the package tree visiting each matching package.- Parameters:
predicate
- determines which packages within the package tree should be visitedvisitor
- will receive each package in the package tree matching the given predicate- See Also:
accept(Predicate, ClassVisitor)
-
getDescription
public java.lang.String getDescription()- Specified by:
getDescription
in interfaceHasDescription
-
toString
public java.lang.String toString()- Overrides:
toString
in classjava.lang.Object
-
getAllSubpackages()
instead.