code: public boolean isGreaterThan(Semver version) {
          // Compare the main part
          if (this.getMajor() > version.getMajor()) return true;
          else if (this.getMajor() < version.getMajor()) return false;
  
          int otherMinor = version.getMinor() != null ? version.getMinor() : 0;
          if (this.getMinor() != null && this.getMinor() > otherMinor) return true;
          else if (this.getMinor() != null && this.getMinor() < otherMinor) return false;
  
          int otherPatch = version.getPatch() != null ? version.getPatch() : 0;
          if (this.getPatch() != null && this.getPatch() > otherPatch) return true;
          else if (this.getPatch() != null && this.getPatch() < otherPatch) return false;
  
          // Let's take a look at the suffix
          String[] tokens1 = this.getSuffixTokens();
          String[] tokens2 = version.getSuffixTokens();
  
          // If one of the versions has no suffix, it's greater!
          if (tokens1.length == 0 && tokens2.length > 0) return true;
          if (tokens2.length == 0 && tokens1.length > 0) return false;
  
          // Let's see if one of suffixes is greater than the other
          int i = 0;
          while (i < tokens1.length && i < tokens2.length) {
              int cmp;
              try {
                  // Trying to resolve the suffix part with an integer
                  int t1 = Integer.valueOf(tokens1[i]);
                  int t2 = Integer.valueOf(tokens2[i]);
                  cmp = t1 - t2;
              } catch (NumberFormatException e) {
                  // Else, do a string comparison
                  cmp = tokens1[i].compareToIgnoreCase(tokens2[i]);
              }
              if (cmp < 0) return false;
              else if (cmp > 0) return true;
              i++;
          }
  
          // If one of the versions has some remaining suffixes, it's greater
          return tokens1.length > tokens2.length;
      }
docs: Checks if the version is greater than another version
  
  @param version the version to compare
  
  @return true if the current version is greater than the provided version