public UserAssessmentShortVoCollection listUserAssessments(UserDefinedAssessmentType type) {
    DomainFactory factory = getDomainFactory();
    StringBuffer hql = new StringBuffer(" ");
    String query = "select u1_1 from UserAssessment as u1_1 ";

    ArrayList markers = new ArrayList();
    ArrayList values = new ArrayList();
    String andStr = " ";

    if (type != null) {
      hql.append(andStr + " u1_1.assessmentType.id = :TYPE");
      markers.add("TYPE");
      values.add(new Integer(type.getId()));
      andStr = " and ";
    }

    if (markers.size() > 0) query += " where ";

    query += hql.toString();

    List list = factory.find(query, markers, values);

    return UserAssessmentShortVoAssembler.createUserAssessmentShortVoCollectionFromUserAssessment(
            list)
        .sort();
  }
  /**
   * Update the ValueObject with the Domain Object.
   *
   * @param map DomainObjectMap of DomainObjects to already created ValueObjects.
   * @param valueObject to be updated
   * @param domainObject ims.assessment.configuration.domain.objects.PatientAssessmentFolder
   */
  public static ims.assessment.vo.PatientAssessmentFolderVo insert(
      DomainObjectMap map,
      ims.assessment.vo.PatientAssessmentFolderVo valueObject,
      ims.assessment.configuration.domain.objects.PatientAssessmentFolder domainObject) {
    if (null == domainObject) {
      return valueObject;
    }
    if (null == map) {
      map = new DomainObjectMap();
    }

    valueObject.setID_PatientAssessmentFolder(domainObject.getId());
    valueObject.setIsRIE(domainObject.getIsRIE());

    // If this is a recordedInError record, and the domainObject
    // value isIncludeRecord has not been set, then we return null and
    // not the value object
    if (valueObject.getIsRIE() != null
        && valueObject.getIsRIE().booleanValue() == true
        && !domainObject.isIncludeRecord()) return null;

    // If this is not a recordedInError record, and the domainObject
    // value isIncludeRecord has been set, then we return null and
    // not the value object
    if ((valueObject.getIsRIE() == null || valueObject.getIsRIE().booleanValue() == false)
        && domainObject.isIncludeRecord()) return null;

    // FolderName
    valueObject.setFolderName(domainObject.getFolderName());
    // PatientAssessments
    valueObject.setPatientAssessments(
        ims.assessment.vo.domain.UserAssessmentShortVoAssembler
            .createUserAssessmentShortVoCollectionFromUserAssessment(
                map, domainObject.getPatientAssessments()));
    // GraphicAssessments
    valueObject.setGraphicAssessments(
        ims.assessment.vo.domain.GraphicAssessmentShortVoAssembler
            .createGraphicAssessmentShortVoCollectionFromGraphicAssessment(
                map, domainObject.getGraphicAssessments()));
    return valueObject;
  }