IUnit parentUnit = null; if(parentUnitID != null){ parentUnit = (IUnit) suportePersistente.getIPersistentObject().readByOID(Unit.class, parentUnitID); if(unit.getParentUnits().contains(parentUnit)){ unit.removeParentUnits(parentUnit); parentUnit = null; } }
IUnit parentUnit = setParentUnits(parentUnitID, suportePersistente, unit);  unit.edit(unitName, unitCostCenter, beginDate, endDate, type, parentUnit);
    public void run(Integer unitID, Integer parentUnitID, String unitName, String unitCostCenter, Date beginDate, Date endDate,            UnitType type) throws ExcepcaoPersistencia, FenixServiceException {        ISuportePersistente suportePersistente = PersistenceSupportFactory.getDefaultPersistenceSupport();                IUnit unit = null;        if(unitID == null){            unit = DomainFactory.makeUnit();        }        else{           unit = (IUnit) suportePersistente.getIPersistentObject().readByOID(Unit.class, unitID);           if(unit == null){               throw new FenixServiceException("error.noUnit");           }        }                                IUnit parentUnit = null;        if(parentUnitID != null){            parentUnit = (IUnit) suportePersistente.getIPersistentObject().readByOID(Unit.class, parentUnitID);            if(unit.getParentUnits().contains(parentUnit)){                unit.removeParentUnits(parentUnit);                parentUnit = null;            }        }                unit.edit(unitName, unitCostCenter, beginDate, endDate, type, parentUnit);    }