Interface EnquiryManagement


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

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void addEnquiry​(pl.edu.icm.unity.types.registration.EnquiryForm form)
      Add a new enquiry form.
      java.util.List<pl.edu.icm.unity.types.registration.EnquiryForm> getAvailableStickyEnquires​(pl.edu.icm.unity.types.basic.EntityParam entity)  
      java.util.List<pl.edu.icm.unity.types.registration.EnquiryForm> getEnquires()  
      pl.edu.icm.unity.types.registration.EnquiryForm getEnquiry​(java.lang.String id)  
      pl.edu.icm.unity.types.registration.EnquiryResponseState getEnquiryResponse​(java.lang.String requestId)  
      java.util.List<pl.edu.icm.unity.types.registration.EnquiryResponseState> getEnquiryResponses()
      Lists all responses
      FormAutomationSupport getFormAutomationSupport​(pl.edu.icm.unity.types.registration.EnquiryForm form)  
      java.util.List<pl.edu.icm.unity.types.registration.EnquiryForm> getPendingEnquires​(pl.edu.icm.unity.types.basic.EntityParam entity)  
      void ignoreEnquiry​(java.lang.String enquiryId, pl.edu.icm.unity.types.basic.EntityParam entity)
      Marks an enquiry as ignored for the given user.
      void processEnquiryResponse​(java.lang.String id, pl.edu.icm.unity.types.registration.EnquiryResponse finalResponse, pl.edu.icm.unity.types.registration.RegistrationRequestAction action, java.lang.String publicComment, java.lang.String privateComment)
      Accepts, deletes or rejects a given enquiry response.
      void removeEnquiry​(java.lang.String formId, boolean dropRequests)
      Remove an existing enquiry form.
      void removePendingStickyRequest​(java.lang.String form, pl.edu.icm.unity.types.basic.EntityParam entity)  
      void sendEnquiry​(java.lang.String enquiryId)
      Triggers a (re?)
      java.lang.String submitEnquiryResponse​(pl.edu.icm.unity.types.registration.EnquiryResponse response, pl.edu.icm.unity.types.registration.RegistrationContext context)
      Submits an enquiry response.
      void updateEnquiry​(pl.edu.icm.unity.types.registration.EnquiryForm updatedForm, boolean ignoreRequestsAndInvitations)
      Updates an existing enquiry form.
    • 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​(java.lang.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​(java.lang.String formId,
                           boolean dropRequests)
                    throws pl.edu.icm.unity.exceptions.EngineException
        Remove an existing enquiry form.
        Parameters:
        formId -
        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​(java.lang.String id,
                                    pl.edu.icm.unity.types.registration.EnquiryResponse finalResponse,
                                    pl.edu.icm.unity.types.registration.RegistrationRequestAction action,
                                    java.lang.String publicComment,
                                    java.lang.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

        java.util.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​(java.lang.String id)
                                                            throws pl.edu.icm.unity.exceptions.EngineException
        Returns:
        enquiry form with given id.
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • getPendingEnquires

        java.util.List<pl.edu.icm.unity.types.registration.EnquiryForm> getPendingEnquires​(pl.edu.icm.unity.types.basic.EntityParam entity)
                                                                                    throws pl.edu.icm.unity.exceptions.EngineException
        Parameters:
        entity -
        Returns:
        list of enquires which are supposed to be filled by a given user. Only active enquires, which were not yet filled nor ignored by the user are returned.
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • ignoreEnquiry

        void ignoreEnquiry​(java.lang.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.
        Parameters:
        enquiryId -
        entity -
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • submitEnquiryResponse

        java.lang.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.
        Parameters:
        response -
        context - submission context
        Returns:
        id of the recorder response
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • getEnquiryResponses

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

        pl.edu.icm.unity.types.registration.EnquiryResponseState getEnquiryResponse​(java.lang.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
      • getAvailableStickyEnquires

        java.util.List<pl.edu.icm.unity.types.registration.EnquiryForm> getAvailableStickyEnquires​(pl.edu.icm.unity.types.basic.EntityParam entity)
                                                                                            throws pl.edu.icm.unity.exceptions.EngineException
        Parameters:
        entity -
        Returns:
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • removePendingStickyRequest

        void removePendingStickyRequest​(java.lang.String form,
                                        pl.edu.icm.unity.types.basic.EntityParam entity)
                                 throws pl.edu.icm.unity.exceptions.EngineException
        Parameters:
        form -
        entity -
        Throws:
        pl.edu.icm.unity.exceptions.EngineException