Ejemplo n.º 1
0
  /**
   * Handles POST requests for /
   *
   * @param apiEntry the object with form data about entry point.
   * @param result BindingResult with data about validation of input data.
   * @return JSP page which will be shown.
   */
  @RequestMapping(value = "/", method = RequestMethod.POST)
  public String doCheckAPI(ApiEntry apiEntry, BindingResult result) {
    if (result.hasErrors()) {
      return JSP;
    }
    if (!apiEntry.getUrl().startsWith("http://") && !apiEntry.getUrl().startsWith("https://")) {
      apiEntry.setUrl("http://" + apiEntry.getUrl());
    }
    if (apiEntry.getUrl().length() < 10) {
      apiEntry.setMessage("Invalid URL");
      return JSP;
    }

    createTree(apiEntry);
    if (HttpValidator.responseOk(apiEntry)
        && apiEntry.getResourceNodes().getDescendants().size() > 0) {
      validateTree(apiEntry);
      generateViewOfQuestionnaires(apiEntry);
      generateViewOfResources(apiEntry);
      generateViewOfTree(apiEntry);
      return JSPOkResponse;
    } else {
      return JSPBadResponse;
    }
  }