Package pl.edu.icm.unity.engine.api
Interface RegistrationsManagement
public interface RegistrationsManagement
Registrations support: forms, submissions of requests and their processing.
- Author:
- K. Benedyczak
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addForm
(pl.edu.icm.unity.base.registration.RegistrationForm form) Add a new registration form.pl.edu.icm.unity.base.registration.RegistrationForm
getFormAutomationSupport
(pl.edu.icm.unity.base.registration.RegistrationForm form) List<pl.edu.icm.unity.base.registration.RegistrationForm>
getForms()
pl.edu.icm.unity.base.registration.RegistrationRequestState
List<pl.edu.icm.unity.base.registration.RegistrationRequestState>
Lists all registration requests.boolean
void
processRegistrationRequest
(String id, pl.edu.icm.unity.base.registration.RegistrationRequest finalRequest, pl.edu.icm.unity.base.registration.RegistrationRequestAction action, String publicComment, String privateComment) Accepts, deletes or rejects a given registration request.void
removeForm
(String formId, boolean dropRequests) Remove an existing registration form.void
Remove an existing registration form with no dependency checkingsubmitRegistrationRequest
(pl.edu.icm.unity.base.registration.RegistrationRequest request, pl.edu.icm.unity.base.registration.RegistrationContext context) Submits a new registration request.void
updateForm
(pl.edu.icm.unity.base.registration.RegistrationForm updatedForm, boolean ignoreRequestsAndInvitations) Updates an existing form.
-
Method Details
-
addForm
void addForm(pl.edu.icm.unity.base.registration.RegistrationForm form) throws pl.edu.icm.unity.base.exceptions.EngineException Add a new registration form.- Parameters:
form
-- Throws:
pl.edu.icm.unity.base.exceptions.EngineException
-
removeForm
void removeForm(String formId, boolean dropRequests) throws pl.edu.icm.unity.base.exceptions.EngineException Remove an existing registration form.- Parameters:
formId
-dropRequests
- if true then all requests of this form are deleted. If false, the operation will throw exception if there are any requests for the form.- Throws:
pl.edu.icm.unity.base.exceptions.EngineException
-
updateForm
void updateForm(pl.edu.icm.unity.base.registration.RegistrationForm updatedForm, boolean ignoreRequestsAndInvitations) throws pl.edu.icm.unity.base.exceptions.EngineException Updates an existing form.- Parameters:
updatedForm
-ignoreRequestsAndInvitations
- if true then operation will ignore form requests and invitations. If false then it will fail if there are any pending requests of the form.- Throws:
pl.edu.icm.unity.base.exceptions.EngineException
-
getForms
List<pl.edu.icm.unity.base.registration.RegistrationForm> getForms() throws pl.edu.icm.unity.base.exceptions.EngineException- Returns:
- all available forms.
- Throws:
pl.edu.icm.unity.base.exceptions.EngineException
-
getForm
pl.edu.icm.unity.base.registration.RegistrationForm getForm(String id) throws pl.edu.icm.unity.base.exceptions.EngineException - Returns:
- form with given id.
- Throws:
pl.edu.icm.unity.base.exceptions.EngineException
-
hasForm
- Returns:
- true if form with given name exists
-
submitRegistrationRequest
String submitRegistrationRequest(pl.edu.icm.unity.base.registration.RegistrationRequest request, pl.edu.icm.unity.base.registration.RegistrationContext context) throws pl.edu.icm.unity.base.exceptions.EngineException Submits a new registration request. It gets a pending state unless automatically processed by the form's automation. Note that the input parameter can be modified by the invocation: all the supplied credential secrets are transformed to the internal (typically hashed) form. Important: this API call requires high authZ privileges. This is because the operation trusts confirmation state of the passed arguments. In case such operation shall be exposed with a public, unprivileged API, then we need an other variant, forcing unconfirmed state of parameters. This can be problematic for mobile numbers.- Parameters:
request
-context
-- Returns:
- automatically assigned identifier of the request
- Throws:
pl.edu.icm.unity.base.exceptions.EngineException
-
getRegistrationRequests
List<pl.edu.icm.unity.base.registration.RegistrationRequestState> getRegistrationRequests() throws pl.edu.icm.unity.base.exceptions.EngineExceptionLists all registration requests.- Returns:
- Throws:
pl.edu.icm.unity.base.exceptions.EngineException
-
getRegistrationRequest
pl.edu.icm.unity.base.registration.RegistrationRequestState getRegistrationRequest(String id) throws pl.edu.icm.unity.base.exceptions.EngineException - Returns:
- registration request by id
- Throws:
pl.edu.icm.unity.base.exceptions.EngineException
-
processRegistrationRequest
void processRegistrationRequest(String id, pl.edu.icm.unity.base.registration.RegistrationRequest finalRequest, pl.edu.icm.unity.base.registration.RegistrationRequestAction action, String publicComment, String privateComment) throws pl.edu.icm.unity.base.exceptions.EngineException Accepts, deletes or rejects a given registration request. The request can be freely modified at this time too, with one exception: the credentials originally submitted are always preserved.- Parameters:
id
- request id to be processedfinalRequest
- updated registration request with edits made by adminaction
- what to do with the request.publicComment
- comment to be recorded and sent to the requesterprivateComment
- comment to be internally recored only.- Throws:
pl.edu.icm.unity.base.exceptions.EngineException
-
getFormAutomationSupport
FormAutomationSupport getFormAutomationSupport(pl.edu.icm.unity.base.registration.RegistrationForm form) - Returns:
- form automation support for a given form
-
removeFormWithoutDependencyChecking
void removeFormWithoutDependencyChecking(String formId) throws pl.edu.icm.unity.base.exceptions.EngineException Remove an existing registration form with no dependency checking- Parameters:
formId
-- Throws:
pl.edu.icm.unity.base.exceptions.EngineException
-