Skip to content

Commit a3e81a5

Browse files
committed
GH-144 - Consistently switch to runtime retention for annotations.
1 parent 5cdd97f commit a3e81a5

File tree

19 files changed

+44
-57
lines changed

19 files changed

+44
-57
lines changed

Diff for: jmolecules-architecture/jmolecules-hexagonal-architecture/src/main/java/org/jmolecules/architecture/hexagonal/Adapter.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
* @see SecondaryPort
3535
* @since 1.5
3636
*/
37-
@Retention(RetentionPolicy.CLASS)
37+
@Retention(RetentionPolicy.RUNTIME)
3838
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3939
@Documented
4040
public @interface Adapter {

Diff for: jmolecules-architecture/jmolecules-hexagonal-architecture/src/main/java/org/jmolecules/architecture/hexagonal/Application.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
* @see Adapter
3434
* @since 1.5
3535
*/
36-
@Retention(RetentionPolicy.CLASS)
36+
@Retention(RetentionPolicy.RUNTIME)
3737
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3838
@Documented
3939
public @interface Application {}

Diff for: jmolecules-architecture/jmolecules-hexagonal-architecture/src/main/java/org/jmolecules/architecture/hexagonal/Port.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
* @see SecondaryPort
3737
* @since 1.5
3838
*/
39-
@Retention(RetentionPolicy.CLASS)
39+
@Retention(RetentionPolicy.RUNTIME)
4040
@Target({ ElementType.PACKAGE, ElementType.TYPE })
4141
@Documented
4242
public @interface Port {

Diff for: jmolecules-architecture/jmolecules-hexagonal-architecture/src/main/java/org/jmolecules/architecture/hexagonal/PrimaryAdapter.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
* @since 1.5
3333
*/
3434
@Adapter
35-
@Retention(RetentionPolicy.CLASS)
35+
@Retention(RetentionPolicy.RUNTIME)
3636
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3737
@Documented
3838
public @interface PrimaryAdapter {

Diff for: jmolecules-architecture/jmolecules-hexagonal-architecture/src/main/java/org/jmolecules/architecture/hexagonal/PrimaryPort.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
* @since 1.5
3333
*/
3434
@Port
35-
@Retention(RetentionPolicy.CLASS)
35+
@Retention(RetentionPolicy.RUNTIME)
3636
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3737
@Documented
3838
public @interface PrimaryPort {

Diff for: jmolecules-architecture/jmolecules-hexagonal-architecture/src/main/java/org/jmolecules/architecture/hexagonal/SecondaryAdapter.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
* @see SecondaryPort
3131
*/
3232
@Adapter
33-
@Retention(RetentionPolicy.CLASS)
33+
@Retention(RetentionPolicy.RUNTIME)
3434
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3535
@Documented
3636
public @interface SecondaryAdapter {

Diff for: jmolecules-architecture/jmolecules-hexagonal-architecture/src/main/java/org/jmolecules/architecture/hexagonal/SecondaryPort.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
* @since 1.5
3434
*/
3535
@Port
36-
@Retention(RetentionPolicy.CLASS)
36+
@Retention(RetentionPolicy.RUNTIME)
3737
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3838
@Documented
3939
public @interface SecondaryPort {

Diff for: jmolecules-architecture/jmolecules-layered-architecture/src/main/java/org/jmolecules/architecture/layered/ApplicationLayer.java

+2-3
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,7 @@
3737
* @see <a href="https://domainlanguage.com/wp-content/uploads/2016/05/DDD_Reference_2015-03.pdf">Domain-Driven Design
3838
* Reference (Evans) - Layered Architecture</a>
3939
*/
40-
@Retention(RetentionPolicy.CLASS)
40+
@Retention(RetentionPolicy.RUNTIME)
4141
@Target({ ElementType.PACKAGE, ElementType.TYPE })
4242
@Documented
43-
public @interface ApplicationLayer {
44-
}
43+
public @interface ApplicationLayer {}

Diff for: jmolecules-architecture/jmolecules-layered-architecture/src/main/java/org/jmolecules/architecture/layered/DomainLayer.java

+2-3
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,7 @@
3434
* @see <a href="https://domainlanguage.com/wp-content/uploads/2016/05/DDD_Reference_2015-03.pdf">Domain-Driven Design
3535
* Reference (Evans) - Layered Architecture</a>
3636
*/
37-
@Retention(RetentionPolicy.CLASS)
37+
@Retention(RetentionPolicy.RUNTIME)
3838
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3939
@Documented
40-
public @interface DomainLayer {
41-
}
40+
public @interface DomainLayer {}

Diff for: jmolecules-architecture/jmolecules-layered-architecture/src/main/java/org/jmolecules/architecture/layered/InfrastructureLayer.java

+2-3
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,7 @@
3737
* @see <a href="https://domainlanguage.com/wp-content/uploads/2016/05/DDD_Reference_2015-03.pdf">Domain-Driven Design
3838
* Reference (Evans) - Layered Architecture</a>
3939
*/
40-
@Retention(RetentionPolicy.CLASS)
40+
@Retention(RetentionPolicy.RUNTIME)
4141
@Target({ ElementType.PACKAGE, ElementType.TYPE })
4242
@Documented
43-
public @interface InfrastructureLayer {
44-
}
43+
public @interface InfrastructureLayer {}

Diff for: jmolecules-architecture/jmolecules-layered-architecture/src/main/java/org/jmolecules/architecture/layered/InterfaceLayer.java

+2-3
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,7 @@
3333
* @see <a href="https://domainlanguage.com/wp-content/uploads/2016/05/DDD_Reference_2015-03.pdf">Domain-Driven Design
3434
* Reference (Evans) - Layered Architecture</a>
3535
*/
36-
@Retention(RetentionPolicy.CLASS)
36+
@Retention(RetentionPolicy.RUNTIME)
3737
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3838
@Documented
39-
public @interface InterfaceLayer {
40-
}
39+
public @interface InterfaceLayer {}

Diff for: jmolecules-architecture/jmolecules-onion-architecture/src/main/java/org/jmolecules/architecture/onion/classical/ApplicationServiceRing.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,9 @@
3232
* @author Martin Schimak
3333
* @author Oliver Drotbohm
3434
* @see <a href="https://jeffreypalermo.com/2008/07/the-onion-architecture-part-1/">The Onion Architecture : part 1
35-
* (Palermo)</a>
35+
* (Palermo)</a>
3636
*/
37-
@Retention(RetentionPolicy.CLASS)
37+
@Retention(RetentionPolicy.RUNTIME)
3838
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3939
@Documented
40-
public @interface ApplicationServiceRing {
41-
}
40+
public @interface ApplicationServiceRing {}

Diff for: jmolecules-architecture/jmolecules-onion-architecture/src/main/java/org/jmolecules/architecture/onion/classical/DomainModelRing.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,9 @@
3232
* @author Martin Schimak
3333
* @author Oliver Drotbohm
3434
* @see <a href="https://jeffreypalermo.com/2008/07/the-onion-architecture-part-1/">The Onion Architecture : part 1
35-
* (Palermo)</a>
35+
* (Palermo)</a>
3636
*/
37-
@Retention(RetentionPolicy.CLASS)
37+
@Retention(RetentionPolicy.RUNTIME)
3838
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3939
@Documented
40-
public @interface DomainModelRing {
41-
}
40+
public @interface DomainModelRing {}

Diff for: jmolecules-architecture/jmolecules-onion-architecture/src/main/java/org/jmolecules/architecture/onion/classical/DomainServiceRing.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,9 @@
3333
* @author Martin Schimak
3434
* @author Oliver Drotbohm
3535
* @see <a href="https://jeffreypalermo.com/2008/07/the-onion-architecture-part-1/">The Onion Architecture : part 1
36-
* (Palermo)</a>
36+
* (Palermo)</a>
3737
*/
38-
@Retention(RetentionPolicy.CLASS)
38+
@Retention(RetentionPolicy.RUNTIME)
3939
@Target({ ElementType.PACKAGE, ElementType.TYPE })
4040
@Documented
41-
public @interface DomainServiceRing {
42-
}
41+
public @interface DomainServiceRing {}

Diff for: jmolecules-architecture/jmolecules-onion-architecture/src/main/java/org/jmolecules/architecture/onion/classical/InfrastructureRing.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,9 @@
3232
* @author Martin Schimak
3333
* @author Oliver Drotbohm
3434
* @see <a href="https://jeffreypalermo.com/2008/07/the-onion-architecture-part-1/">The Onion Architecture : part 1
35-
* (Palermo)</a>
35+
* (Palermo)</a>
3636
*/
37-
@Retention(RetentionPolicy.CLASS)
37+
@Retention(RetentionPolicy.RUNTIME)
3838
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3939
@Documented
40-
public @interface InfrastructureRing {
41-
}
40+
public @interface InfrastructureRing {}

Diff for: jmolecules-architecture/jmolecules-onion-architecture/src/main/java/org/jmolecules/architecture/onion/simplified/ApplicationRing.java

+5-6
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,18 @@
2222
import java.lang.annotation.Target;
2323

2424
/**
25-
* Identifies the {@link ApplicationRing} in an onion architecture. The application ring implements and
26-
* orchestrates business use case. To do so, it only depends on the inner rings, i.e. the {@link DomainRing}.
25+
* Identifies the {@link ApplicationRing} in an onion architecture. The application ring implements and orchestrates
26+
* business use case. To do so, it only depends on the inner rings, i.e. the {@link DomainRing}.
2727
*
2828
* @author Christian Stettler
2929
* @author Henning Schwentner
3030
* @author Stephan Pirnbaum
3131
* @author Martin Schimak
3232
* @author Oliver Drotbohm
3333
* @see <a href="https://jeffreypalermo.com/2008/07/the-onion-architecture-part-1/">The Onion Architecture : part 1
34-
* (Palermo)</a>
34+
* (Palermo)</a>
3535
*/
36-
@Retention(RetentionPolicy.CLASS)
36+
@Retention(RetentionPolicy.RUNTIME)
3737
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3838
@Documented
39-
public @interface ApplicationRing {
40-
}
39+
public @interface ApplicationRing {}

Diff for: jmolecules-architecture/jmolecules-onion-architecture/src/main/java/org/jmolecules/architecture/onion/simplified/DomainRing.java

+8-11
Original file line numberDiff line numberDiff line change
@@ -22,24 +22,21 @@
2222
import java.lang.annotation.Target;
2323

2424
/**
25-
* Identifies the {@link DomainRing} in an onion architecture. The domain ring is the inner-most ring in the
26-
* onion architecture and is only coupled to itself. It models the truth of the business domain by consisting of
27-
* behaviour (logic) and the required state (data).
28-
*
29-
* Compared to the 4-ring onion architecture in which the domain is split into domain model and domain services, the
30-
* 3-ring version combines those 2 rings so that it implements behavior (logic), state (data), and interfaces needed for
31-
* e.g. storing and retrieving data, i.e. repository interfaces.
25+
* Identifies the {@link DomainRing} in an onion architecture. The domain ring is the inner-most ring in the onion
26+
* architecture and is only coupled to itself. It models the truth of the business domain by consisting of behaviour
27+
* (logic) and the required state (data). Compared to the 4-ring onion architecture in which the domain is split into
28+
* domain model and domain services, the 3-ring version combines those 2 rings so that it implements behavior (logic),
29+
* state (data), and interfaces needed for e.g. storing and retrieving data, i.e. repository interfaces.
3230
*
3331
* @author Christian Stettler
3432
* @author Henning Schwentner
3533
* @author Stephan Pirnbaum
3634
* @author Martin Schimak
3735
* @author Oliver Drotbohm
3836
* @see <a href="https://jeffreypalermo.com/2008/07/the-onion-architecture-part-1/">The Onion Architecture : part 1
39-
* (Palermo)</a>
37+
* (Palermo)</a>
4038
*/
41-
@Retention(RetentionPolicy.CLASS)
39+
@Retention(RetentionPolicy.RUNTIME)
4240
@Target({ ElementType.PACKAGE, ElementType.TYPE })
4341
@Documented
44-
public @interface DomainRing {
45-
}
42+
public @interface DomainRing {}

Diff for: jmolecules-architecture/jmolecules-onion-architecture/src/main/java/org/jmolecules/architecture/onion/simplified/InfrastructureRing.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,9 @@
3232
* @author Martin Schimak
3333
* @author Oliver Drotbohm
3434
* @see <a href="https://jeffreypalermo.com/2008/07/the-onion-architecture-part-1/">The Onion Architecture : part 1
35-
* (Palermo)</a>
35+
* (Palermo)</a>
3636
*/
37-
@Retention(RetentionPolicy.CLASS)
37+
@Retention(RetentionPolicy.RUNTIME)
3838
@Target({ ElementType.PACKAGE, ElementType.TYPE })
3939
@Documented
40-
public @interface InfrastructureRing {
41-
}
40+
public @interface InfrastructureRing {}

Diff for: kmolecules-ddd/src/main/kotlin/org/jmolecules/ddd/annotation/Association.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import kotlin.reflect.KClass
2424
* @author Oliver Drotbohm
2525
* @see [John Sullivan - Advancing Enterprise DDD - Reinstating the Aggregate](https://scabl.blogspot.com/2015/04/aeddd-9.html)
2626
*/
27-
@Retention(AnnotationRetention.RUNTIME)
27+
@Retention
2828
@Target(
2929
AnnotationTarget.ANNOTATION_CLASS,
3030
AnnotationTarget.FIELD,

0 commit comments

Comments
 (0)