summaryrefslogtreecommitdiff
path: root/base/src/main/java/bjc/utils/services/Implementor.java
diff options
context:
space:
mode:
Diffstat (limited to 'base/src/main/java/bjc/utils/services/Implementor.java')
-rw-r--r--base/src/main/java/bjc/utils/services/Implementor.java24
1 files changed, 24 insertions, 0 deletions
diff --git a/base/src/main/java/bjc/utils/services/Implementor.java b/base/src/main/java/bjc/utils/services/Implementor.java
new file mode 100644
index 0000000..3dac860
--- /dev/null
+++ b/base/src/main/java/bjc/utils/services/Implementor.java
@@ -0,0 +1,24 @@
+package bjc.utils.services;
+
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.*;
+
+/**
+ * Indicates the default implementation for a given service.
+ *
+ * @author bjcul
+ *
+ */
+@Documented
+@Retention(RUNTIME)
+@Target(TYPE)
+public @interface Implementor {
+ /**
+ * The default implementation for the service this annotates.
+ *
+ * @return The default impl. for the service this annotates
+ */
+ Class<?> value();
+}