Class RateLimitingControl

java.lang.Object
com.atlassian.jira.testkit.client.RestApiClient<RateLimitingControl>
com.atlassian.jira.testkit.client.BackdoorControl<RateLimitingControl>
com.atlassian.jira.functest.framework.backdoor.BackdoorControl<RateLimitingControl>
com.atlassian.jira.functest.framework.backdoor.RateLimitingControl

public class RateLimitingControl extends BackdoorControl<RateLimitingControl>
Control for managing rate limiting settings.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final record 
    Record representing job control settings for rate limiting.
    static final record 
    Record representing rate limiting settings.

    Nested classes/interfaces inherited from class com.atlassian.jira.testkit.client.RestApiClient

    com.atlassian.jira.testkit.client.RestApiClient.BackdoorLoggingFilter, com.atlassian.jira.testkit.client.RestApiClient.JsonMediaTypeFilter, com.atlassian.jira.testkit.client.RestApiClient.RestCall, com.atlassian.jira.testkit.client.RestApiClient.SessionlessConsistencyFilter
  • Field Summary

    Fields inherited from class com.atlassian.jira.testkit.client.BackdoorControl

    API_REST_PATH, API_REST_VERSION, DEFAULT_REST_PATH, logger, rootPath

    Fields inherited from class com.atlassian.jira.testkit.client.RestApiClient

    REST_VERSION
  • Constructor Summary

    Constructors
    Constructor
    Description
    RateLimitingControl(com.atlassian.jira.testkit.client.JIRAEnvironmentData environmentData)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addExemption(String username)
    Adds an exemption for the specified user.
    protected jakarta.ws.rs.client.WebTarget
     
    Gets the current rate limiting settings.
    void
    Updates the bucket collection job frequency to the minimum valid duration (1 minute).
    void
    Updates the bucket collection job frequency to a minimal value.
    void
    Updates the rate limiting settings.

    Methods inherited from class com.atlassian.jira.testkit.client.BackdoorControl

    createResourceForPath, createResourceForPath, get, getRestModulePath

    Methods inherited from class com.atlassian.jira.testkit.client.RestApiClient

    anonymous, authenticate, authoriseWithOAuth2, authoriseWithOAuth2, cleanUp, client, createResource, createResourceGadget, createResourceInternal, errorResponse, expanded, getCredentialsProvider, getEnvironmentData, loginAs, loginAs, registerResponse, resourceRoot, resourceRoot, setOf, toResponse, toResponse, toResponse, withCredentialsProvider

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • RateLimitingControl

      public RateLimitingControl(com.atlassian.jira.testkit.client.JIRAEnvironmentData environmentData)
  • Method Details

    • getSettings

      Gets the current rate limiting settings.
      Returns:
      the rate limiting settings
    • updateSettings

      public void updateSettings(RateLimitingControl.RateLimitSettings settings)
      Updates the rate limiting settings.
      Parameters:
      settings - the rate limiting settings to update
    • addExemption

      public void addExemption(String username)
      Adds an exemption for the specified user.
      Parameters:
      username - the username to exempt from rate limiting
    • updateBucketCollectionJobFrequency

      public void updateBucketCollectionJobFrequency(String interval)
      Updates the bucket collection job frequency to a minimal value.
      Parameters:
      interval - the minimal duration value (e.g. "PT1S" for 1 second)
    • setMinimalBucketCollectionJobFrequency

      public void setMinimalBucketCollectionJobFrequency()
      Updates the bucket collection job frequency to the minimum valid duration (1 minute). This is useful for testing scenarios requiring minimum job intervals.
    • createResource

      protected jakarta.ws.rs.client.WebTarget createResource()
      Overrides:
      createResource in class BackdoorControl<RateLimitingControl>