< prev index next >

vcs/src/main/java/org/openjdk/skara/vcs/openjdk/OpenJDKTag.java

Print this page
*** 50,20 ***
       * jdk-9.1+27  -> jdk-9.1  9.1              +            27
       * jdk8-b90    -> jdk8     8                -b           90
       * jdk7u40-b20 -> jdk7u40  7u40     u20     -b           29
       * hs24-b30    -> hs24     24               -b           30
       * hs23.6-b19  -> hs23.6   23.6     .6      -b           19
       */
  
      private final static String legacyOpenJDKVersionPattern = "(jdk([0-9]{1,2}(u[0-9]{1,3})?))";
      private final static String legacyHSVersionPattern = "((hs[0-9]{1,2}(\\.[0-9]{1,3})?))";
      private final static String legacyBuildPattern = "(-b)([0-9]{2,3})";
      private final static String OpenJDKVersionPattern = "(jdk-([0-9]+(\\.[0-9]){0,3}))(\\+)([0-9]+)";
  
      private final static List<Pattern> tagPatterns = List.of(Pattern.compile(legacyOpenJDKVersionPattern + legacyBuildPattern),
                                                               Pattern.compile(legacyHSVersionPattern + legacyBuildPattern),
!                                                              Pattern.compile(OpenJDKVersionPattern));
  
      /**
       * Attempts to create an OpenJDKTag instance from a general Tag.
       *
       * This will succeed if the tag follows the OpenJDK tag formatting
--- 50,23 ---
       * jdk-9.1+27  -> jdk-9.1  9.1              +            27
       * jdk8-b90    -> jdk8     8                -b           90
       * jdk7u40-b20 -> jdk7u40  7u40     u20     -b           29
       * hs24-b30    -> hs24     24               -b           30
       * hs23.6-b19  -> hs23.6   23.6     .6      -b           19
+      * 11.1+22     -> 11.1     11.1     .1      +            22
       */
  
      private final static String legacyOpenJDKVersionPattern = "(jdk([0-9]{1,2}(u[0-9]{1,3})?))";
      private final static String legacyHSVersionPattern = "((hs[0-9]{1,2}(\\.[0-9]{1,3})?))";
      private final static String legacyBuildPattern = "(-b)([0-9]{2,3})";
      private final static String OpenJDKVersionPattern = "(jdk-([0-9]+(\\.[0-9]){0,3}))(\\+)([0-9]+)";
+     private final static String OpenJFXVersionPattern = "((?:jdk-){0,1}([1-9](?:(?:[0-9]*)(\\.(?:0|[1-9][0-9]*)){0,3})))(?:(\\+)([0-9]+)|(-ga))";
  
      private final static List<Pattern> tagPatterns = List.of(Pattern.compile(legacyOpenJDKVersionPattern + legacyBuildPattern),
                                                               Pattern.compile(legacyHSVersionPattern + legacyBuildPattern),
!                                                              Pattern.compile(OpenJDKVersionPattern),
+                                                              Pattern.compile(OpenJFXVersionPattern));
  
      /**
       * Attempts to create an OpenJDKTag instance from a general Tag.
       *
       * This will succeed if the tag follows the OpenJDK tag formatting

*** 104,10 ***
--- 107,13 ---
       * Build number.
       *
       * @return
       */
      public int buildNum() {
+         if (buildNum == null) {
+             return 0;
+         }
          return Integer.parseInt(buildNum);
      }
  
      /**
       * Tag of the previous build (if any).
< prev index next >