Ejemplo n.º 1
0
  public void removeParameter(int id, Session session) {
    Parameter parameter = findParameter(id, true);

    // if parameter == null, it maybe response parameter
    if (parameter == null) {
      parameter = findParameter(id, false);

      // if parameter == null still, it must be child parameter of a complex parameter
      if (parameter == null) {
        parameter = findChildParameter(id);
        if (parameter != null && parameter.getComplexParameterList() != null) {
          for (Parameter pComplex : parameter.getComplexParameterList()) {
            pComplex.getParameterList().remove(parameter);
            session.delete(parameter);
          }
        }
        return;
      }
      Iterator<Action> iterator = parameter.getActionResponseList().iterator();
      while (iterator.hasNext()) {
        iterator.next().getResponseParameterList().remove(parameter);
        session.delete(parameter);
      }
    } else {
      Iterator<Action> iterator = parameter.getActionRequestList().iterator();
      while (iterator.hasNext()) {
        iterator.next().getRequestParameterList().remove(parameter);
        session.delete(parameter);
      }
    }
  }
Ejemplo n.º 2
0
 /**
  * find parameter recursively recursive: p.parameterList[0].parameterList[0].....
  *
  * @param p
  * @param id
  * @return return the object found, other wise return null
  */
 private Parameter findParameterRecursively(Parameter p, int id) {
   Iterator<Parameter> iterator = p.getParameterList().iterator();
   while (iterator.hasNext()) {
     Parameter parameter = iterator.next();
     if (parameter.getId() == id) {
       return parameter;
     }
     parameter = findParameterRecursively(parameter, id);
     if (parameter != null) {
       return parameter;
     }
   }
   return null;
 }