Package com.tngtech.archunit.core.domain
Class JavaPackage
- java.lang.Object
-
- com.tngtech.archunit.core.domain.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.HasName
HasName.AndFullName, HasName.Predicates
-
-
Method Summary
All Methods Instance Methods Concrete Methods 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()
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
getName()
JavaPackage
getPackage(java.lang.String packageName)
java.util.Set<JavaPackage>
getPackageDependenciesFromSelf()
java.util.Set<JavaPackage>
getPackageDependenciesToSelf()
Optional<JavaPackage>
getParent()
java.lang.String
getRelativeName()
java.util.Set<JavaPackage>
getSubPackages()
java.lang.String
toString()
-
-
-
Method Detail
-
getName
@PublicAPI(usage=ACCESS) public java.lang.String getName()
-
getRelativeName
@PublicAPI(usage=ACCESS) public java.lang.String getRelativeName()
- Returns:
- the (relative) name of this package, e.g.
lang
for packagejava.lang
-
getParent
@PublicAPI(usage=ACCESS) public Optional<JavaPackage> getParent()
- Returns:
- the parent package, e.g.
java
for packagejava.lang
-
getClasses
@PublicAPI(usage=ACCESS) public java.util.Set<JavaClass> getClasses()
- Returns:
- all classes directly contained in this package, no classes in sub-packages (compare
getAllClasses()
)
-
getAllClasses
@PublicAPI(usage=ACCESS) public java.util.Set<JavaClass> getAllClasses()
- Returns:
- all classes contained in this package or any sub-package (compare
getClasses()
)
-
getSubPackages
@PublicAPI(usage=ACCESS) public java.util.Set<JavaPackage> getSubPackages()
- Returns:
- all (direct) sub-packages contained in this package, e.g.
[java.lang, java.io, ...]
for packagejava
(comparegetAllSubPackages()
)
-
getAllSubPackages
@PublicAPI(usage=ACCESS) public java.util.Set<JavaPackage> 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()
)
-
containsClass
@PublicAPI(usage=ACCESS) public boolean containsClass(JavaClass clazz)
-
containsClass
@PublicAPI(usage=ACCESS) public boolean containsClass(java.lang.Class<?> clazz)
- 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
@PublicAPI(usage=ACCESS) public JavaClass getClass(java.lang.Class<?> clazz)
- 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
@PublicAPI(usage=ACCESS) public boolean containsClassWithSimpleName(java.lang.String className)
- 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
@PublicAPI(usage=ACCESS) public JavaClass getClassWithSimpleName(java.lang.String className)
- 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
@PublicAPI(usage=ACCESS) public boolean containsPackage(java.lang.String packageName)
- 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
@PublicAPI(usage=ACCESS) public JavaPackage getPackage(java.lang.String packageName)
- 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
@PublicAPI(usage=ACCESS) public java.util.Set<Dependency> getClassDependenciesFromSelf()
- Returns:
- All
dependencies
that originate from aJavaClass
within this package to aJavaClass
outside of this package
-
getClassDependenciesToSelf
@PublicAPI(usage=ACCESS) public java.util.Set<Dependency> getClassDependenciesToSelf()
- Returns:
- All
dependencies
that originate from aJavaClass
outside of this package to aJavaClass
within this package
-
getPackageDependenciesFromSelf
@PublicAPI(usage=ACCESS) public java.util.Set<JavaPackage> getPackageDependenciesFromSelf()
-
getPackageDependenciesToSelf
@PublicAPI(usage=ACCESS) public java.util.Set<JavaPackage> 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)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-