|
52 | 52 | import com.tngtech.archunit.core.domain.properties.HasAnnotations;
|
53 | 53 | import com.tngtech.archunit.core.domain.properties.HasModifiers;
|
54 | 54 | import com.tngtech.archunit.core.domain.properties.HasName;
|
55 |
| -import com.tngtech.archunit.core.domain.properties.HasSourceCodeLocation; |
56 | 55 | import com.tngtech.archunit.core.domain.properties.HasOwner.Functions.Get;
|
57 | 56 | import com.tngtech.archunit.core.domain.properties.HasOwner.Predicates.With;
|
| 57 | +import com.tngtech.archunit.core.domain.properties.HasSourceCodeLocation; |
58 | 58 | import com.tngtech.archunit.core.domain.properties.HasThrowsClause;
|
59 | 59 | import com.tngtech.archunit.lang.ArchCondition;
|
60 | 60 | import com.tngtech.archunit.lang.ConditionEvents;
|
|
90 | 90 | import static com.tngtech.archunit.core.domain.JavaConstructor.CONSTRUCTOR_NAME;
|
91 | 91 | import static com.tngtech.archunit.core.domain.JavaMember.Predicates.declaredIn;
|
92 | 92 | import static com.tngtech.archunit.core.domain.JavaModifier.FINAL;
|
| 93 | +import static com.tngtech.archunit.core.domain.JavaModifier.STATIC; |
93 | 94 | import static com.tngtech.archunit.core.domain.properties.CanBeAnnotated.Predicates.annotatedWith;
|
94 | 95 | import static com.tngtech.archunit.core.domain.properties.CanBeAnnotated.Predicates.metaAnnotatedWith;
|
95 | 96 | import static com.tngtech.archunit.core.domain.properties.HasModifiers.Predicates.modifier;
|
@@ -522,22 +523,22 @@ public static <HAS_NAME extends HasName & HasDescription & HasSourceCodeLocation
|
522 | 523 |
|
523 | 524 | @PublicAPI(usage = ACCESS)
|
524 | 525 | public static ArchCondition<JavaClass> resideInAPackage(final String packageIdentifier) {
|
525 |
| - return new DoesConditionByPredicate(JavaClass.Predicates.resideInAPackage(packageIdentifier)); |
| 526 | + return new DoesConditionByPredicate<>(JavaClass.Predicates.resideInAPackage(packageIdentifier)); |
526 | 527 | }
|
527 | 528 |
|
528 | 529 | @PublicAPI(usage = ACCESS)
|
529 | 530 | public static ArchCondition<JavaClass> resideInAnyPackage(String... packageIdentifiers) {
|
530 |
| - return new DoesConditionByPredicate(JavaClass.Predicates.resideInAnyPackage(packageIdentifiers)); |
| 531 | + return new DoesConditionByPredicate<>(JavaClass.Predicates.resideInAnyPackage(packageIdentifiers)); |
531 | 532 | }
|
532 | 533 |
|
533 | 534 | @PublicAPI(usage = ACCESS)
|
534 | 535 | public static ArchCondition<JavaClass> resideOutsideOfPackage(String packageIdentifier) {
|
535 |
| - return new DoesConditionByPredicate(JavaClass.Predicates.resideOutsideOfPackage(packageIdentifier)); |
| 536 | + return new DoesConditionByPredicate<>(JavaClass.Predicates.resideOutsideOfPackage(packageIdentifier)); |
536 | 537 | }
|
537 | 538 |
|
538 | 539 | @PublicAPI(usage = ACCESS)
|
539 | 540 | public static ArchCondition<JavaClass> resideOutsideOfPackages(String... packageIdentifiers) {
|
540 |
| - return new DoesConditionByPredicate(JavaClass.Predicates.resideOutsideOfPackages(packageIdentifiers)); |
| 541 | + return new DoesConditionByPredicate<>(JavaClass.Predicates.resideOutsideOfPackages(packageIdentifiers)); |
541 | 542 | }
|
542 | 543 |
|
543 | 544 | @PublicAPI(usage = ACCESS)
|
@@ -595,6 +596,26 @@ public static <HAS_MODIFIERS extends HasModifiers & HasDescription & HasSourceCo
|
595 | 596 | return not(ArchConditions.<HAS_MODIFIERS>haveModifier(JavaModifier.PRIVATE)).as("not be private");
|
596 | 597 | }
|
597 | 598 |
|
| 599 | + @PublicAPI(usage = ACCESS) |
| 600 | + public static <HAS_MODIFIERS extends HasModifiers & HasDescription & HasSourceCodeLocation> ArchCondition<HAS_MODIFIERS> beStatic() { |
| 601 | + return ArchConditions.<HAS_MODIFIERS>haveModifier(STATIC).as("be static"); |
| 602 | + } |
| 603 | + |
| 604 | + @PublicAPI(usage = ACCESS) |
| 605 | + public static <HAS_MODIFIERS extends HasModifiers & HasDescription & HasSourceCodeLocation> ArchCondition<HAS_MODIFIERS> notBeStatic() { |
| 606 | + return not(ArchConditions.<HAS_MODIFIERS>haveModifier(STATIC).as("be static")); |
| 607 | + } |
| 608 | + |
| 609 | + @PublicAPI(usage = ACCESS) |
| 610 | + public static <HAS_MODIFIERS extends HasModifiers & HasDescription & HasSourceCodeLocation> ArchCondition<HAS_MODIFIERS> beFinal() { |
| 611 | + return ArchConditions.<HAS_MODIFIERS>haveModifier(FINAL).as("be final"); |
| 612 | + } |
| 613 | + |
| 614 | + @PublicAPI(usage = ACCESS) |
| 615 | + public static <HAS_MODIFIERS extends HasModifiers & HasDescription & HasSourceCodeLocation> ArchCondition<HAS_MODIFIERS> notBeFinal() { |
| 616 | + return not(ArchConditions.<HAS_MODIFIERS>haveModifier(FINAL).as("be final")); |
| 617 | + } |
| 618 | + |
598 | 619 | @PublicAPI(usage = ACCESS)
|
599 | 620 | public static ArchCondition<JavaClass> haveOnlyFinalFields() {
|
600 | 621 | return new HaveOnlyFinalFieldsCondition();
|
|
0 commit comments