return InfoExecutionDegree.newInfoFromDomain(executionDegree);
return InfoExecutionDegreeWithInfoExecutionYearAndDegreeCurricularPlan.newInfoFromDomain(executionDegree);
    public InfoExecutionDegree run(Integer candidateID) throws NonExistingServiceException {        IExecutionDegree executionDegree = null;        try {            ISuportePersistente sp = PersistenceSupportFactory.getDefaultPersistenceSupport();            IMasterDegreeCandidate masterDegreeCandidate = (IMasterDegreeCandidate) sp                    .getIPersistentMasterDegreeCandidate().readByOID(MasterDegreeCandidate.class,                            candidateID);            executionDegree = (IExecutionDegree) sp.getIPersistentExecutionDegree().readByOID(                    ExecutionDegree.class, masterDegreeCandidate.getExecutionDegree().getIdInternal());        } catch (ExcepcaoPersistencia ex) {            throw new RuntimeException(ex);        }        if (executionDegree == null) {            throw new NonExistingServiceException();        }        return InfoExecutionDegree.newInfoFromDomain(executionDegree);    }