Class ArchitecturallyEvidentType

java.lang.Object
org.springframework.modulith.core.ArchitecturallyEvidentType
Direct Known Subclasses:
ArchitecturallyEvidentType.DelegatingType, ArchitecturallyEvidentType.JMoleculesArchitecturallyEvidentType, ArchitecturallyEvidentType.SpringAwareArchitecturallyEvidentType, ArchitecturallyEvidentType.SpringDataAwareArchitecturallyEvidentType

public abstract class ArchitecturallyEvidentType extends Object
A type that is architecturally relevant, i.e. it fulfills a significant role within the architecture.
Author:
Oliver Drotbohm
  • Constructor Details

    • ArchitecturallyEvidentType

      protected ArchitecturallyEvidentType(com.tngtech.archunit.core.domain.JavaClass type)
  • Method Details

    • of

      public static ArchitecturallyEvidentType of(com.tngtech.archunit.core.domain.JavaClass type, Classes beanTypes)
      Creates a new ArchitecturallyEvidentType for the given JavaType and Classes of Spring components.
      Parameters:
      type - must not be null.
      beanTypes - must not be null.
      Returns:
    • getType

      public com.tngtech.archunit.core.domain.JavaClass getType()
      Returns the JavaClass backing the ArchitecturallyEvidentType.
      Returns:
      the type wnn
    • getAbbreviatedFullName

      String getAbbreviatedFullName()
      Returns the abbreviated (i.e. every package fragment reduced to its first character) full name.
      Returns:
      will never be null.
    • isEntity

      boolean isEntity()
      Returns whether the type is an entity in the DDD sense.
      Returns:
    • isAggregateRoot

      public abstract boolean isAggregateRoot()
      Returns whether the type is considered an aggregate root in the DDD sense.
      Returns:
    • isRepository

      public abstract boolean isRepository()
      Returns whether the type is considered a repository in the DDD sense.
      Returns:
    • isService

      public boolean isService()
    • isController

      public boolean isController()
    • isEventListener

      public boolean isEventListener()
    • isConfigurationProperties

      public boolean isConfigurationProperties()
    • isInjectable

      public boolean isInjectable()
    • isValueObject

      public boolean isValueObject()
    • getReferenceTypes

      public Stream<com.tngtech.archunit.core.domain.JavaClass> getReferenceTypes()
      Returns other types that are interesting in the context of the current ArchitecturallyEvidentType. For example, for an event listener this might be the event types the particular listener is interested in.
      Returns:
    • getReferenceMethods

      public Stream<ArchitecturallyEvidentType.ReferenceMethod> getReferenceMethods()
    • toString

      public String toString()
      Overrides:
      toString in class Object