langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Start.java
changeset 45912 865870b7fe9b
parent 45742 36bf0f2436ad
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Start.java	Thu Jul 13 19:34:31 2017 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Start.java	Sat Jul 15 11:06:32 2017 -0700
@@ -38,7 +38,9 @@
 import java.util.Comparator;
 import java.util.List;
 import java.util.Locale;
+import java.util.MissingResourceException;
 import java.util.Objects;
+import java.util.ResourceBundle;
 import java.util.Set;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
@@ -177,6 +179,16 @@
         usage("main.Xusage", OptionKind.EXTENDED, "main.Xusage.foot");
     }
 
+    @Override
+    void version() {
+        messager.notice("javadoc.version", messager.programName, version("release"));
+    }
+
+    @Override
+    void fullVersion() {
+        messager.notice("javadoc.fullversion", messager.programName, version("full"));
+    }
+
     private void usage(String headerKey, OptionKind kind, String footerKey) {
         messager.notice(headerKey);
         showToolOptions(kind);
@@ -193,6 +205,24 @@
             messager.notice(footerKey);
     }
 
+    private static final String versionRBName = "jdk.javadoc.internal.tool.resources.version";
+    private static ResourceBundle versionRB;
+
+    private static String version(String key) {
+        if (versionRB == null) {
+            try {
+                versionRB = ResourceBundle.getBundle(versionRBName);
+            } catch (MissingResourceException e) {
+                return Log.getLocalizedString("version.not.available");
+            }
+        }
+        try {
+            return versionRB.getString(key);
+        } catch (MissingResourceException e) {
+            return Log.getLocalizedString("version.not.available");
+        }
+    }
+
     void showToolOptions(OptionKind kind) {
         Comparator<ToolOption> comp = new Comparator<ToolOption>() {
             final Collator collator = Collator.getInstance(Locale.US);