Class WebhookConfigurationBuilder

  • All Implemented Interfaces:
    org.junit.rules.TestRule

    public class WebhookConfigurationBuilder
    extends org.junit.rules.ExternalResource
    A helper to be used in integration tests for creating and persisting WebhookConfigurations
    • Method Detail

      • webhookConfiguration

        public static WebhookConfigurationBuilder webhookConfiguration()
        Instantiates a web hook configuration builder, that is initialized to the default state.
        Returns:
        a builder ready for further specifications
      • withEvent

        public WebhookConfigurationBuilder withEvent​(java.lang.Class<? extends AbstractEvent> type)
        Specifies event type for the web hook configuration being built
        Parameters:
        type - type of the event that will be processed by the web hook configuration
        Returns:
        a builder with the event type specified
      • withDestination

        public WebhookConfigurationBuilder withDestination​(ConsumedDestinationBuilder builder)
        Specifies destination for the web hook notifications.
        Parameters:
        builder - a builder specifying the destination
        Returns:
        a builder with the destination specified
      • withDestination

        public WebhookConfigurationBuilder withDestination​(ConsumedDestinationModel dest)
        Specifies destination for the web hook notifications.
        Parameters:
        dest - a destination to be used by the web hook configuration
        Returns:
        a builder with the destination specified
      • withIntegrationObject

        public WebhookConfigurationBuilder withIntegrationObject​(java.lang.String ioCode)
        Specifies integration object to be used for payload creation of the web hook notification
        Parameters:
        ioCode - code of the integration object to be associated with the web hook configuration
        Returns:
        a builder with the integration object specified
      • withIntegrationObject

        public WebhookConfigurationBuilder withIntegrationObject​(IntegrationObjectModelBuilder builder)
        Specifies integration object to be used for payload creation of the web hook notification
        Parameters:
        builder - an integration object builder specifying the integration object to be used by the webhook.
        Returns:
        a builder with the integration object specified
      • withScriptFilter

        public WebhookConfigurationBuilder withScriptFilter​(java.lang.String scriptCode)
        Specifies a script that will be used as a filter for the items processed by the webhook being built.
        Parameters:
        scriptCode - code of the script existing in the system, that will be used as a filter for the webhook. If null, or blank or this method was not called, then no filter will be used.
        Returns:
        a builder with the filter specified
      • build

        public WebhookConfigurationModel build()
                                        throws ImpExException
        Creates and persists a web hook configuration according to the specification performed so far on this builder.
        Returns:
        The created WebhookConfigurationModel
        Throws:
        ImpExException - if the created WebhookConfiguration failed to persist
      • before

        protected void before()
                       throws ImpExException
        Overrides:
        before in class org.junit.rules.ExternalResource
        Throws:
        ImpExException
      • after

        protected void after()
        Overrides:
        after in class org.junit.rules.ExternalResource
      • cleanup

        public void cleanup()
        Deletes all items persisted by this builder.