/**
   * Update the ValueObject with the Domain Object.
   *
   * @param map DomainObjectMap of DomainObjects to already created ValueObjects.
   * @param valueObject to be updated
   * @param domainObject ims.core.configuration.domain.objects.ElectiveListConfiguration
   */
  public static ims.admin.vo.ElectiveListConfigForElectiveListDetailsVo insert(
      DomainObjectMap map,
      ims.admin.vo.ElectiveListConfigForElectiveListDetailsVo valueObject,
      ims.core.configuration.domain.objects.ElectiveListConfiguration domainObject) {
    if (null == domainObject) {
      return valueObject;
    }
    if (null == map) {
      map = new DomainObjectMap();
    }

    valueObject.setID_ElectiveListConfiguration(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;

    // ListLocations
    valueObject.setListLocations(
        ims.RefMan.vo.domain.ElectiveListHospitalConfigurationWLVoAssembler
            .createElectiveListHospitalConfigurationWLVoCollectionFromElectiveListHospitalConfiguration(
                map, domainObject.getListLocations()));
    // WaitingListName
    valueObject.setWaitingListName(domainObject.getWaitingListName());
    // StartDate
    java.util.Date StartDate = domainObject.getStartDate();
    if (null != StartDate) {
      valueObject.setStartDate(new ims.framework.utils.Date(StartDate));
    }
    // EndDate
    java.util.Date EndDate = domainObject.getEndDate();
    if (null != EndDate) {
      valueObject.setEndDate(new ims.framework.utils.Date(EndDate));
    }
    // WaitingListCode
    valueObject.setWaitingListCode(domainObject.getWaitingListCode());
    // IsActive
    valueObject.setIsActive(domainObject.isIsActive());
    return valueObject;
  }