public static GDSServerVersion parseRawVersion(String versionString) throws GDSServerVersionException {
  Matcher matcher=VERSION_PATTERN.matcher(versionString);
  if (!matcher.matches()) {
    throw new GDSServerVersionException(String.format("Version string \"%s\" does not match expected format",versionString));
  }
  return new GDSServerVersion(versionString,matcher.group(PLATFORM_IDX),matcher.group(TYPE_IDX),matcher.group(FULL_VERSION_IDX),Integer.parseInt(matcher.group(MAJOR_IDX)),Integer.parseInt(matcher.group(MINOR_IDX)),Integer.parseInt(matcher.group(VARIANT_IDX)),Integer.parseInt(matcher.group(BUILD_IDX)),matcher.group(SERVER_NAME_IDX),matcher.group(EXTENDED_INFO_IDX));
}

public static GDSServerVersion parseRawVersion ( String versionString ) throws GDSServerVersionException { Matcher matcher = VERSION_PATTERN . matcher ( versionString ) ; if ( ! matcher . matches ( ) ) { throw new GDSServerVersionException ( String . format ( "Version string \"%s\" does not match expected format" , versionString ) ) ; } return new GDSServerVersion ( versionString , matcher . group ( PLATFORM_IDX ) , matcher . group ( TYPE_IDX ) , matcher . group ( FULL_VERSION_IDX ) , Integer . parseInt ( matcher . group ( MAJOR_IDX ) ) , Integer . parseInt ( matcher . group ( MINOR_IDX ) ) , Integer . parseInt ( matcher . group ( VARIANT_IDX ) ) , Integer . parseInt ( matcher . group ( BUILD_IDX ) ) , matcher . group ( SERVER_NAME_IDX ) , matcher . group ( EXTENDED_INFO_IDX ) ) ; }
parse the raw version string and create a gdsserverversion object .
