コード例 #1
0
  @Override
  public TemplateProfile prepare(RegisterTemplateCmd cmd) throws ResourceAllocationException {
    TemplateProfile profile = super.prepare(cmd);
    String url = profile.getUrl();

    if ((!url.toLowerCase().endsWith("vhd"))
        && (!url.toLowerCase().endsWith("vhd.zip"))
        && (!url.toLowerCase().endsWith("vhd.bz2"))
        && (!url.toLowerCase().endsWith("vhd.gz"))
        && (!url.toLowerCase().endsWith("qcow2"))
        && (!url.toLowerCase().endsWith("qcow2.zip"))
        && (!url.toLowerCase().endsWith("qcow2.bz2"))
        && (!url.toLowerCase().endsWith("qcow2.gz"))
        && (!url.toLowerCase().endsWith("ova"))
        && (!url.toLowerCase().endsWith("ova.zip"))
        && (!url.toLowerCase().endsWith("ova.bz2"))
        && (!url.toLowerCase().endsWith("ova.gz"))
        && (!url.toLowerCase().endsWith("img"))
        && (!url.toLowerCase().endsWith("raw"))) {
      throw new InvalidParameterValueException(
          "Please specify a valid " + cmd.getFormat().toLowerCase());
    }

    if ((cmd.getFormat().equalsIgnoreCase("vhd")
            && (!url.toLowerCase().endsWith("vhd")
                && !url.toLowerCase().endsWith("vhd.zip")
                && !url.toLowerCase().endsWith("vhd.bz2")
                && !url.toLowerCase().endsWith("vhd.gz")))
        || (cmd.getFormat().equalsIgnoreCase("qcow2")
            && (!url.toLowerCase().endsWith("qcow2")
                && !url.toLowerCase().endsWith("qcow2.zip")
                && !url.toLowerCase().endsWith("qcow2.bz2")
                && !url.toLowerCase().endsWith("qcow2.gz")))
        || (cmd.getFormat().equalsIgnoreCase("ova")
            && (!url.toLowerCase().endsWith("ova")
                && !url.toLowerCase().endsWith("ova.zip")
                && !url.toLowerCase().endsWith("ova.bz2")
                && !url.toLowerCase().endsWith("ova.gz")))
        || (cmd.getFormat().equalsIgnoreCase("raw")
            && (!url.toLowerCase().endsWith("img") && !url.toLowerCase().endsWith("raw")))) {
      throw new InvalidParameterValueException(
          "Please specify a valid URL. URL:"
              + url
              + " is an invalid for the format "
              + cmd.getFormat().toLowerCase());
    }

    profile.setUrl(validateUrl(url));
    return profile;
  }
コード例 #2
0
  @Override
  public TemplateProfile prepare(RegisterIsoCmd cmd) throws ResourceAllocationException {
    TemplateProfile profile = super.prepare(cmd);
    String url = profile.getUrl();

    if ((!url.toLowerCase().endsWith("iso"))
        && (!url.toLowerCase().endsWith("iso.zip"))
        && (!url.toLowerCase().endsWith("iso.bz2"))
        && (!url.toLowerCase().endsWith("iso.gz"))) {
      throw new InvalidParameterValueException("Please specify a valid iso");
    }

    profile.setUrl(validateUrl(url));
    return profile;
  }