aboutsummaryrefslogtreecommitdiff
path: root/java/core/src/main/java/com/google/protobuf/ExperimentalApi.java
diff options
context:
space:
mode:
authorJisi Liu <jisi.liu@gmail.com>2016-01-29 13:51:05 -0800
committerJisi Liu <jisi.liu@gmail.com>2016-01-29 13:51:05 -0800
commit5221dcbe479ed765d8103ed7601c69b6d8d6ca4f (patch)
treed48fed101cf2fc21e07d3034cc4e01c81f00bac2 /java/core/src/main/java/com/google/protobuf/ExperimentalApi.java
parentcb3f428810456dbb31211ed421401b90fb3b6586 (diff)
downloadprotobuf-5221dcbe479ed765d8103ed7601c69b6d8d6ca4f.tar.gz
protobuf-5221dcbe479ed765d8103ed7601c69b6d8d6ca4f.tar.bz2
protobuf-5221dcbe479ed765d8103ed7601c69b6d8d6ca4f.zip
Integrate from google internal.
Java files are moved to un-do the hack in the prevous commit, which moved the java files to the original position for integration.
Diffstat (limited to 'java/core/src/main/java/com/google/protobuf/ExperimentalApi.java')
-rw-r--r--java/core/src/main/java/com/google/protobuf/ExperimentalApi.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/java/core/src/main/java/com/google/protobuf/ExperimentalApi.java b/java/core/src/main/java/com/google/protobuf/ExperimentalApi.java
new file mode 100644
index 00000000..6f41fb81
--- /dev/null
+++ b/java/core/src/main/java/com/google/protobuf/ExperimentalApi.java
@@ -0,0 +1,36 @@
+package com.google.protobuf;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * Indicates a public API that can change at any time, and has no guarantee of API stability and
+ * backward-compatibility.
+ *
+ * <p>Usage guidelines:
+ * <ol>
+ * <li>This annotation is used only on public API. Internal interfaces should not use it.</li>
+ * <li>This annotation should only be added to new APIs. Adding it to an existing API is
+ * considered API-breaking.</li>
+ * <li>Removing this annotation from an API gives it stable status.</li>
+ * </ol>
+ */
+@Retention(RetentionPolicy.SOURCE)
+@Target({
+ ElementType.ANNOTATION_TYPE,
+ ElementType.CONSTRUCTOR,
+ ElementType.FIELD,
+ ElementType.METHOD,
+ ElementType.PACKAGE,
+ ElementType.TYPE})
+@Documented
+public @interface ExperimentalApi {
+ /**
+ * Context information such as links to discussion thread, tracking issue etc.
+ */
+ String value() default "";
+}
+