argos/dmp-backend/core/src/main/java/eu/eudat/service/user/UserService.java

43 lines
1.7 KiB
Java
Raw Normal View History

2023-11-20 16:09:24 +01:00
package eu.eudat.service.user;
2023-11-20 16:08:43 +01:00
2023-11-20 16:09:24 +01:00
import com.fasterxml.jackson.core.JsonProcessingException;
import eu.eudat.model.User;
import eu.eudat.model.persist.UserPersist;
import eu.eudat.model.persist.UserRolePatchPersist;
2023-11-20 16:08:43 +01:00
import gr.cite.tools.exception.MyApplicationException;
import gr.cite.tools.exception.MyForbiddenException;
import gr.cite.tools.exception.MyNotFoundException;
import gr.cite.tools.exception.MyValidationException;
import gr.cite.tools.fieldset.FieldSet;
import jakarta.xml.bind.JAXBException;
2023-11-20 16:08:43 +01:00
import javax.management.InvalidApplicationException;
2023-11-20 16:09:24 +01:00
import java.io.IOException;
2023-11-20 16:08:43 +01:00
import java.util.UUID;
2023-11-20 16:09:24 +01:00
public interface UserService {
2023-11-20 16:08:43 +01:00
2023-11-20 16:09:24 +01:00
User persist(UserPersist model, FieldSet fields) throws MyForbiddenException, MyValidationException, MyApplicationException, MyNotFoundException, InvalidApplicationException, JsonProcessingException;
2024-01-05 13:02:22 +01:00
2023-11-29 16:41:15 +01:00
void updateLanguageMine(String language) throws InvalidApplicationException, JsonProcessingException;
2024-01-05 13:02:22 +01:00
2023-11-29 16:41:15 +01:00
void updateTimezoneMine(String timezone) throws JsonProcessingException;
2024-01-05 13:02:22 +01:00
2023-11-29 16:41:15 +01:00
void updateCultureMine(String culture) throws JsonProcessingException;
2023-11-20 16:08:43 +01:00
void deleteAndSave(UUID id) throws MyForbiddenException, InvalidApplicationException;
2023-11-20 16:09:24 +01:00
byte[] exportCsv() throws IOException;
User patchRoles(UserRolePatchPersist model, FieldSet fields) throws InvalidApplicationException;
void sendMergeAccountConfirmation(String email) throws InvalidApplicationException, JAXBException;
void sendRemoveCredentialConfirmation(String email) throws InvalidApplicationException, JAXBException;
void confirmMergeAccount(String token) throws InvalidApplicationException;
void confirmRemoveCredential(String token) throws InvalidApplicationException;
2023-11-20 16:08:43 +01:00
}