Interface GenericIntegrationProvider

All Superinterfaces:
PluginProvider, UIExtensionProvider
All Known Implementing Classes:
AbstractGenericIntegrationProvider

public interface GenericIntegrationProvider extends PluginProvider, UIExtensionProvider
Allows for the registration of a "Generic" AccountIntegrationType. These could be used to store metadata related to other providers. For example, a Jenkins Task Type may not want the user to have to enter in credentials every time. Instead, they could choose an integration that has those credentials. Additionally, the integration could store data for DatasetProvider dropdowns in those task types. In the Jenkins example, a list of projects could be periodically synced.
Since:
0.15.4
  • Method Details

    • verifyAccountIntegration

      default ServiceResponse verifyAccountIntegration(AccountIntegration accountIntegration, Map opts)
      Validation Method used to validate all inputs applied to the generic integration upon save. If an input fails validation or authentication information cannot be verified, Error messages should be returned via a ServiceResponse object where the key on the error is the field name and the value is the error message. If the error is a generic authentication error or unknown error, a standard message can also be sent back in the response.
      Parameters:
      accountIntegration - The Integration Object contains all the saved information regarding configuration of the Provider.
      opts - any custom payload submission options may exist here
      Returns:
      A response is returned depending on if the inputs are valid or not.
      Since:
      1.1.10
    • getCategory

      String getCategory()
      The category of the integration. This is used to group integrations in the UI. Available categories are defined in AccountIntegration.Category.
      Returns:
    • getOptionTypes

      List<OptionType> getOptionTypes()
      Provide custom configuration options when creating a new AccountIntegration
      Returns:
      a List of OptionType
    • refresh

      void refresh(AccountIntegration accountIntegration)
      Refresh the integration with the latest data from the provider
      Parameters:
      accountIntegration - the integration to refresh
    • getIcon

      Icon getIcon()
      Returns the Integration logo for display when a user needs to view or add this integration
      Returns:
      Icon representation of assets stored in the src/assets of the project.
      Since:
      0.12.3
    • renderTemplate

      HTMLResponse renderTemplate(AccountIntegration integration)
      Integration details provided to your rendering engine
      Parameters:
      integration - details of an Instance
      Returns:
      result of rendering a template
    • getCloudAssociationType

      default AccountIntegrationType.AssociationType getCloudAssociationType()
      Specify if this type of integration can be selectively associated with a cloud on the clouds advanced options
      Returns:
      the association type none,one, or many
      Since:
      1.1.8
    • getClusterAssociationType

      default AccountIntegrationType.AssociationType getClusterAssociationType()
      Specify if this type of integration can be selectively associated with a cluster on the clusters advanced options
      Returns:
      the association type none,one, or many
      Since:
      1.1.8
    • getGroupAssociationType

      default AccountIntegrationType.AssociationType getGroupAssociationType()
      Specify if this type of integration can be selectively associated with a group on the groups advanced options
      Returns:
      the association type none,one, or many
      Since:
      1.1.8