@Override
  public void edit(
      MultiLanguageString unitName,
      String unitNameCard,
      Integer unitCostCenter,
      String acronym,
      YearMonthDay beginDate,
      YearMonthDay endDate,
      String webAddress,
      UnitClassification classification,
      Department department,
      Degree degree,
      AdministrativeOffice administrativeOffice,
      Boolean canBeResponsibleOfSpaces,
      Space campus) {

    super.edit(
        unitName,
        unitNameCard,
        unitCostCenter,
        acronym,
        beginDate,
        endDate,
        webAddress,
        classification,
        department,
        degree,
        administrativeOffice,
        canBeResponsibleOfSpaces,
        campus);
    setDegree(degree);

    checkIfAlreadyExistsOneDegreeWithSameAcronym(this);
  }
 @Override
 public void setDegree(Degree degree) {
   if (degree == null) {
     throw new DomainException("error.DegreeUnit.empty.degree");
   }
   super.setDegree(degree);
 }
 @Override
 public void setAcronym(String acronym) {
   if (StringUtils.isEmpty(acronym)) {
     throw new DomainException("error.unit.empty.acronym");
   }
   super.setAcronym(acronym);
 }
 private DegreeUnit() {
   super();
   super.setType(PartyTypeEnum.DEGREE_UNIT);
 }
 @Override
 public void delete() {
   super.setDegree(null);
   super.delete();
 }