public static Text newFromEntity(TextEntity entity) {
   TextImpl yesno = new TextImpl();
   yesno.setId(entity.getId());
   yesno.setDefinition(
       TextDefinitionImpl.newFromEntity(
           (TextDefinitionEntity) entity.getActivityItemDefinitionEntity()));
   yesno.textComment = entity.getTextComment();
   return yesno;
 }
  public static ActivityDefinition newFromEntity(final ActivityDefinitionEntity entity) {
    final ActivityDefinitionImpl dto = new ActivityDefinitionImpl();
    dto.setId(entity.getId());
    dto.setType(
        ActivityTypeImpl.newFromEntity(entity.getActivityType(), LocaleContextHolder.getLocale()));
    dto.setFrequency(entity.getFrequency());
    dto.setStartDate(ApiUtil.formatDate(entity.getStartDate()));
    dto.setEndDate(ApiUtil.formatDate(entity.getHealthPlan().getEndDate()));
    dto.setHealthPlanName(entity.getHealthPlan().getName());
    dto.setHealthPlanActive(entity.getHealthPlan().isActive());
    dto.setHealthPlanId(entity.getHealthPlan().getId());
    dto.setHealthPlanStartDate(entity.getHealthPlan().getStartDate());
    dto.setActive(!entity.isRemovedFlag());
    dto.setReminder(entity.isReminder());
    dto.setHealthPlanCareUnit(CareUnitImpl.newFromEntity(entity.getHealthPlan().getCareUnit()));

    List<ActivityItemDefinitionEntity> mdl = entity.getActivityItemDefinitions();
    final ActivityItemValuesDefinition[] goalValues = new ActivityItemValuesDefinition[mdl.size()];
    for (int i = 0; i < goalValues.length; i++) {
      if (mdl.get(i) instanceof MeasurementDefinitionEntity) {
        goalValues[i] =
            MeasurementDefinitionImpl.newFromEntity((MeasurementDefinitionEntity) mdl.get(i));
      } else if (mdl.get(i) instanceof EstimationDefinitionEntity) {
        goalValues[i] =
            EstimationDefinitionImpl.newFromEntity((EstimationDefinitionEntity) mdl.get(i));
      } else if (mdl.get(i) instanceof YesNoDefinitionEntity) {
        goalValues[i] = YesNoDefinitionImpl.newFromEntity((YesNoDefinitionEntity) mdl.get(i));
      } else if (mdl.get(i) instanceof TextDefinitionEntity) {
        goalValues[i] = TextDefinitionImpl.newFromEntity((TextDefinitionEntity) mdl.get(i));
      }
    }
    dto.goalValues = goalValues;

    dto.calcCompletion(entity.getScheduledActivities());
    CareActorBaseView issuedBy =
        CareActorBaseViewImpl.newFromEntity(entity.getHealthPlan().getIssuedBy());
    dto.setIssuedBy(issuedBy);

    return dto;
  }