Interface EnquiryManagement


  • public interface EnquiryManagement
    Enquires support: forms, submissions of requests and their processing.
    Author:
    K. Benedyczak
    • Method Detail

      • addEnquiry

        void addEnquiry​(pl.edu.icm.unity.types.registration.EnquiryForm form)
                 throws pl.edu.icm.unity.exceptions.EngineException
        Add a new enquiry form.
        Parameters:
        form -
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • sendEnquiry

        void sendEnquiry​(String enquiryId)
                  throws pl.edu.icm.unity.exceptions.EngineException
        Triggers a (re?)send of enquiry notification message. The message will be send only for those who has not yet filled the enquiry.
        Parameters:
        enquiryId -
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • removeEnquiry

        void removeEnquiry​(String formId,
                           boolean dropRequests)
                    throws pl.edu.icm.unity.exceptions.EngineException
        Remove an existing enquiry 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.exceptions.EngineException
      • updateEnquiry

        void updateEnquiry​(pl.edu.icm.unity.types.registration.EnquiryForm updatedForm,
                           boolean ignoreRequestsAndInvitations)
                    throws pl.edu.icm.unity.exceptions.EngineException
        Updates an existing enquiry form. Will be applicable only to those users who has not yet filled the original enquiry.
        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.exceptions.EngineException
      • processEnquiryResponse

        void processEnquiryResponse​(String id,
                                    pl.edu.icm.unity.types.registration.EnquiryResponse finalResponse,
                                    pl.edu.icm.unity.types.registration.RegistrationRequestAction action,
                                    String publicComment,
                                    String privateComment)
                             throws pl.edu.icm.unity.exceptions.EngineException
        Accepts, deletes or rejects a given enquiry response. 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 processed
        finalRequest - updated request with edits made by admin
        action - what to do with the request.
        publicComment - comment to be recorded and sent to the requester
        privateComment - comment to be internally recored only.
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • getEnquires

        List<pl.edu.icm.unity.types.registration.EnquiryForm> getEnquires()
                                                                   throws pl.edu.icm.unity.exceptions.EngineException
        Returns:
        all available enquires.
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • getEnquiry

        pl.edu.icm.unity.types.registration.EnquiryForm getEnquiry​(String id)
                                                            throws pl.edu.icm.unity.exceptions.EngineException
        Returns:
        enquiry form with given id.
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • hasForm

        boolean hasForm​(String id)
      • ignoreEnquiry

        void ignoreEnquiry​(String enquiryId,
                           pl.edu.icm.unity.types.basic.EntityParam entity)
                    throws pl.edu.icm.unity.exceptions.EngineException
        Marks an enquiry as ignored for the given user. This is only possible for enquires which are not mandatory to be filled.
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • submitEnquiryResponse

        String submitEnquiryResponse​(pl.edu.icm.unity.types.registration.EnquiryResponse response,
                                     pl.edu.icm.unity.types.registration.RegistrationContext context)
                              throws pl.edu.icm.unity.exceptions.EngineException
        Submits an enquiry response.
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • getEnquiryResponses

        List<pl.edu.icm.unity.types.registration.EnquiryResponseState> getEnquiryResponses()
                                                                                    throws pl.edu.icm.unity.exceptions.EngineException
        Lists all responses
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • getEnquiryResponse

        pl.edu.icm.unity.types.registration.EnquiryResponseState getEnquiryResponse​(String requestId)
        Returns:
        a specific enquiry response
      • getFormAutomationSupport

        FormAutomationSupport getFormAutomationSupport​(pl.edu.icm.unity.types.registration.EnquiryForm form)
        Returns:
        form automation support for a given form
      • removePendingStickyRequest

        void removePendingStickyRequest​(String form,
                                        pl.edu.icm.unity.types.basic.EntityParam entity)
                                 throws pl.edu.icm.unity.exceptions.EngineException
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • removeEnquiryWithoutDependencyChecking

        void removeEnquiryWithoutDependencyChecking​(String formId)
                                             throws pl.edu.icm.unity.exceptions.EngineException
        Remove an existing enquiry form with no dependency checking
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • getAvailableEnquires

        List<pl.edu.icm.unity.types.registration.EnquiryForm> getAvailableEnquires​(pl.edu.icm.unity.types.basic.EntityParam entityParam,
                                                                                   EnquirySelector selector)
                                                                            throws pl.edu.icm.unity.exceptions.EngineException
        Allows to get enquiries according to the given filter.
        Parameters:
        selector - filter what should be retrieved
        Throws:
        pl.edu.icm.unity.exceptions.EngineException