diff --git a/src/main/java/se/su/dsv/scipro/springdata/serviceimpls/FirstMeetingServiceImpl.java b/src/main/java/se/su/dsv/scipro/springdata/serviceimpls/FirstMeetingServiceImpl.java new file mode 100644 index 0000000000..7e774c92f5 --- /dev/null +++ b/src/main/java/se/su/dsv/scipro/springdata/serviceimpls/FirstMeetingServiceImpl.java @@ -0,0 +1,42 @@ +package se.su.dsv.scipro.springdata.serviceimpls; + +import javax.annotation.Resource; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.mysema.query.types.expr.BooleanExpression; + +import se.su.dsv.scipro.match.dataobject.FirstMeeting; +import se.su.dsv.scipro.match.dataobject.QFirstMeeting; +import se.su.dsv.scipro.match.dataobject.SupervisorIdea; +import se.su.dsv.scipro.springdata.repos.FirstMeetingRepo; +import se.su.dsv.scipro.springdata.services.FirstMeetingService; + + +@Service ( "firstMeetingService" ) +@Transactional ( readOnly = true ) +public class FirstMeetingServiceImpl extends AbstractQueryService<FirstMeeting, Long> implements FirstMeetingService { + + @Resource + private FirstMeetingRepo firstMeetingRepo; + + @Autowired + public FirstMeetingServiceImpl( + @Qualifier("firstMeetingRepo") + FirstMeetingRepo firstMeetingRepo) { + super(firstMeetingRepo, firstMeetingRepo); + System.out.println("FirstMeetingServiceImpl instantiating..."); + } + + @Override + public FirstMeeting getMeetingByIdea(SupervisorIdea idea) { + return firstMeetingRepo.findOne(byIdea(idea)); + } + + public BooleanExpression byIdea(SupervisorIdea idea) { + return QFirstMeeting.firstMeeting.supervisorIdea.eq(idea); + } +} diff --git a/src/main/java/se/su/dsv/scipro/springdata/services/FirstMeetingService.java b/src/main/java/se/su/dsv/scipro/springdata/services/FirstMeetingService.java new file mode 100644 index 0000000000..ccc671a8c7 --- /dev/null +++ b/src/main/java/se/su/dsv/scipro/springdata/services/FirstMeetingService.java @@ -0,0 +1,10 @@ +package se.su.dsv.scipro.springdata.services; + +import se.su.dsv.scipro.match.dataobject.FirstMeeting; +import se.su.dsv.scipro.match.dataobject.SupervisorIdea; + + +public interface FirstMeetingService extends GenericService<FirstMeeting, Long>, QueryService<FirstMeeting, Long> { + + FirstMeeting getMeetingByIdea(SupervisorIdea idea); +}