/**
   * Gets a property of the suite. A property is an attribute from either the application descriptor
   * or JAR Manifest.
   *
   * @param key the name of the property
   * @return A string with the value of the property. <code>null</code> is returned if no value is
   *     available for the key.
   */
  public String getProperty(String key) {
    String prop;

    if (bufferedJadProps == null) {
      getPropertiesFromStorage();
      if (bufferedJadProps == null) {
        return null;
      }
    }

    // check the JAD first
    prop = bufferedJadProps.getProperty(key);
    if (prop != null) {
      return prop;
    }

    if (bufferedJarProps == null) {
      return null;
    }

    return bufferedJarProps.getProperty(key);
  }