code: public static URL buildUrl(URL context, String... relocations) {
          URL url = context;
  
          for (String move : relocations) {
              try {
                  url = new URL(url, move);
              } catch (MalformedURLException e) {
                  throw new AssertionError("URL('" + url + "', '" + move + "') isn't valid URL");
              }
          }
  
          return url;
      }
docs: Use URL context and one or more relocations to build end URL.
  
  @param context     first URL used like a context root for all relocation changes
  @param relocations array of relocation URLs
  @return end url after all changes made on context with relocations
  @throws AssertionError when context or some of relocations are malformed URLs