예제 #1
0
  /**
   * getPropertyValue
   *
   * @param appName
   * @param envName
   * @param propertyName
   * @return String
   * @see String
   * @see String
   * @see String
   */
  @Override
  public String getPropertyValue(String appName, String envName, String propertyName)
      throws ValidationException {
    String propertyValue = null;

    Query q =
        em.createQuery(
            "select ep from EnvironmentProperty ep where ep.property.name=:propertyName and ep.environment.name=:envName and ep.environment.application.name=:appName");
    q.setParameter("appName", appName);
    q.setParameter("envName", envName);
    q.setParameter("propertyName", propertyName);
    List<EnvironmentProperty> environmentPropertyList = q.getResultList();

    if (environmentPropertyList.size() == 1) {
      EnvironmentProperty environmentProperty = environmentPropertyList.get(0);
      propertyValue = environmentProperty.getValue();
    } else {
      String[] inserts = new String[] {propertyName, appName, envName};
      throw validationException(UNDEFINED_PROPERTY_MESSAGE, inserts);
    }

    return propertyValue;
  }