package net.agef.jobexchange.application; import java.util.List; import net.agef.jobexchange.domain.DataProvider; import net.agef.jobexchange.domain.LoginUser; import net.agef.jobexchange.domain.OrganisationRoleData; import net.agef.jobexchange.domain.User; import net.agef.jobexchange.exceptions.APDUserNotFoundException; import net.agef.jobexchange.exceptions.CantChangeOnlineStateException; import net.agef.jobexchange.exceptions.CobraUserNotFoundException; import net.agef.jobexchange.exceptions.InwentUserNotFoundException; import net.agef.jobexchange.exceptions.ObjectNotDeletedException; import net.agef.jobexchange.exceptions.ObjectNotSavedException; import net.agef.jobexchange.exceptions.PassedAttributeIsNullException; public interface UserWorker { public void addUser(User user) throws ObjectNotSavedException, PassedAttributeIsNullException; public void addUser(User user, DataProvider dataProvider) throws ObjectNotSavedException, PassedAttributeIsNullException; public void modifyUser(User user) throws ObjectNotSavedException, PassedAttributeIsNullException; public void deleteUser(User user) throws ObjectNotDeletedException, PassedAttributeIsNullException; public void deleteUser(Long userId) throws ObjectNotDeletedException, PassedAttributeIsNullException; public User getUserByAPDId(Long userId)throws APDUserNotFoundException; public User getUserByCobraId(Long userId, boolean isOrganisationUser)throws CobraUserNotFoundException; public User getUserByInwentId(Long inwentUserId) throws InwentUserNotFoundException; public void switchContactAddressByAPDUserId(Long userId)throws APDUserNotFoundException, ObjectNotSavedException; public void setUserOnlineStatus(User user, Boolean onlineStatus) throws ObjectNotSavedException, CantChangeOnlineStateException; public List<User> getOrganisationUserByLoginUser(LoginUser user) throws PassedAttributeIsNullException; public List<OrganisationRoleData> getOrganisationUserDataByLoginUser(LoginUser user) throws PassedAttributeIsNullException; }