package com.oceaneconsulting.tanaguru.service.impl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.oceaneconsulting.tanaguru.dao.WsInvocationDao; import com.oceaneconsulting.tanaguru.entity.WsInvocation; import com.oceaneconsulting.tanaguru.entity.WsRole; import com.oceaneconsulting.tanaguru.entity.WsUser; import com.oceaneconsulting.tanaguru.service.WsInvocationService; /** * Classe d'implementation du service d'invocation * @author msobahi * */ @Service("wsInvocationService") public class WsInvocationServiceImpl /*extends AbstractGenericDataService<WsInvocation, Long> */implements WsInvocationService { /** * Max invocation */ private static final int NBR_INVOCATION_MAX = 5; @Autowired private WsInvocationDao invocationDao; @Override public void create(WsInvocation wsInvocation) { invocationDao.create(wsInvocation); } @Override public int getCountInvocByUser(WsUser user) { return invocationDao.getCountInvocByUser(user); } @Override public int getCountInvocByUser(WsUser user, String hostName, String hostIp, WsRole role) { return invocationDao.getCountInvocByUser(user, hostName, hostIp, role); } @Override public int getCountInvocByUserId(Long userId) { return invocationDao.getCountInvocByUserId(userId); } @Override public boolean checkLimitationOverflow(WsUser user, String hostName, String hostIp, WsRole role){ int nbrInvocation = invocationDao.getCountInvocByUser(user, hostName, hostIp, role); return nbrInvocation <= NBR_INVOCATION_MAX; } }