예제 #1
0
  /**
   * @param environment
   * @param property
   * @param propertyValue
   * @throws ValidationException
   */
  @Override
  public EnvironmentProperty setEnvironmentPropertyValue(
      Environment environment, Property property, String propertyValue) throws ValidationException {

    Query q =
        em.createQuery(
            "select ep from EnvironmentProperty ep where ep.property.id=:propertyId and ep.environment.id=:envId");
    q.setParameter("propertyId", property.getId());
    q.setParameter("envId", environment.getId());
    List<EnvironmentProperty> environmentPropertyList = q.getResultList();

    if (environmentPropertyList.size() == 1) {
      EnvironmentProperty environmentProperty = environmentPropertyList.get(0);
      environmentProperty.setValue(propertyValue);
      return environmentPropertyDAO.update(environmentProperty);
    } else {
      String[] inserts =
          new String[] {
            property.getName(), property.getApplication().getName(), environment.getName()
          };
      throw validationException(UNDEFINED_PROPERTY_MESSAGE, inserts);
    }
  }