package pt.estgp.estgweb.services.courseunits;
import org.apache.log4j.Logger;
import pt.estgp.estgweb.domain.CourseUnit;
import pt.estgp.estgweb.domain.DomainObjectFactory;
import pt.estgp.estgweb.domain.UserSession;
import pt.estgp.estgweb.domain.dao.DaoFactory;
import pt.estgp.estgweb.domain.views.CourseUnitView;
import pt.estgp.estgweb.services.expceptions.ServiceException;
import pt.utl.ist.berserk.logic.serviceManager.IService;
/*
* @author Goncalo Luiz gedl [AT] rnl [DOT] ist [DOT] utl [DOT] pt
*
*
* Created at 17/Out/2003 , 23:45:24
*
*/
/**
* @author Jorge Machado
*
*
* Created at 17/Out/2003 , 23:45:24
*
*/
public class CreateCourseUnitAdminService
implements IService
{
CourseUnitWorkService loadCourseUnitWorksService =
new CourseUnitWorkService
();
private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger =
1.5.0/docs/api/java/util/logging/Logger.html">Logger.
getLogger(CreateCourseUnitAdminService.
class);
public CourseUnitView run
(CourseUnitView cUV, UserSession userSession
) throws ServiceException
{
CourseUnit courseUnit
;
if(cUV.
getId() > 0
)
{
courseUnit = DaoFactory.
getCourseUnitDaoImpl().
get(cUV.
getId());
courseUnit.
setCourseUnitEvaluation(DaoFactory.
getCourseUnitEvaluationDaoImpl().
narrow(courseUnit.
getCourseUnitEvaluation()));
courseUnit.
setCourseUnitProgram(DaoFactory.
getCourseUnitProgramDaoImpl().
narrow(courseUnit.
getCourseUnitProgram()));
}
else
{
courseUnit = DomainObjectFactory.
createCourseUnitImpl();
DaoFactory.
getCourseUnitDaoImpl().
save(courseUnit
);
}
cUV.
persistViewAdminInObject(courseUnit
);
courseUnit.
setInstitutionCode("" + DaoFactory.
getConfigurationDaoImpl().
getSigesInstitutionCode());
//por o curso
//por os profs
//por alunos
//por courseCode, courseName, CourseYear relativo ao Curso Escolhido
return loadCourseUnitWorksService.
loadCourseUnitWorks(courseUnit.
getId(),userSession
);
}
}