All Classes and Interfaces
Class
Description
An anonymous
AuthenticationProvider which allows to configure whether the users have read or write access in the dashboard.The
ApiKeyAuthenticationProvider allows to protect the JobRunr Pro Dashboard with an API key for server-to-server communication.A filter that is triggered each time that the state of a Job has changed (except when the Job is deleted via the Dashboard).
An AuthenticationProvider allows to add authentication to the JobRunr Dashboard.
Provides static methods for creating fire-and-forget, delayed and recurring jobs as well as to delete existing background jobs.
Provides static methods for creating fire-and-forget, delayed and recurring jobs as well as to delete existing background jobs.
This class allows configuring the BackgroundJobServer
Enum representing the different types of background job server threads.
A BackgroundJobServerWorkerPolicy allows to configure how Jobs are fetched for processing.
A simple
AuthenticationProvider that uses Basic Authentication and which allows to configure one or more BasicAuthenticationUsers using username and password.A class representing a basic authentication user.
A filter that can be added to
BatchJobs and which will be called with the progress of the child jobs.Documents why a class, field or method is visible
Signifies that a public API (public class, method or field) is subject to incompatible changes, or even removal, in a future release.
A Boolean enum that can be used within annotations as
Boolean cannot be used due to possible null.Utility class that contains many static methods for byte handling.
Utility class for everything related to Carbon-Aware Scheduling.
Class that allows to configure Carbon Aware Job Processing.
Internal class for JobRunr to access all
CarbonAwareJobProcessingConfiguration detailsRepresents a period of time in which a job may be scheduled to minimize carbon emissions.
Class to be only used on startup to load all resources (SQL migrations and noSQL migrations) from the classpath.
Class responsible for resolving ConcurrentJobModificationExceptions.
Represents the configuration for a ConcurrentJobRateLimiter.
Schedule class represents a parsed crontab expression.
Allows to setup a custom Backoff Retry Policy.
You can now use a
CustomSchedule to handle the schedule of recurring jobs.A class that represents the latency of a certain queue (e.g.
A class that represents the total usage of all workers across all
BackgroundJobServers.Allows to configure Database related options like whether to automatically migrate all JobRunr related tables or
whether to enable/disable select for update skip locked.
Default implementation of
ConcurrentJobModificationPolicy.Default implementation of
ConcurrentJobModificationResolver.A JobFilter of type
RetryFilter that will retry the job if it fails for up to 10 times with an exponential back-off policy.Allows to setup a policy which will not retry jobs if an exception occurs.
Serializer for
Duration type.Classes implementing this interface are responsible to get the Dynamic Queue for a certain job and
to provide it to the Job via
Job.setDynamicQueue(String).The
DynamicQueueManager allows to pause and resume dynamic queues.Allows to create a
DynamicQueueStrategy that will then be used by the BackgroundJobServer.Returns details about the dynamic queues.
A
DynamicQueueStrategy is responsible to get the new Jobs to process and to decide whether a RecurringJob is running on a paused dynamic queue.A filter that is triggered each time that the state of a Job is changed (except when the Job is deleted via the Dashboard).
Needed for jobs that go from scheduled state to enqueued state while the job was already enqueued or is already processing.
A
Runnable that can throw checked Exceptions.A
Supplier that can throw checked Exceptions.Allows to set up a Exponential Backoff Retry Policy.
Creates a new
FixedSizeWorkerPoolDynamicQueuePolicy which provides the BackgroundJobServer with a FixedSizeWorkerPoolDynamicQueueStrategy.A Fixed Thread Pool Size Dynamic Queue Strategy that cycles through the different Dynamic Queues and only processes the amount of jobs per given Dynamic Queue.
Allows to create a GitHub issue directly from JobRunr.
This is a functional interface which represents a lambda that will be parsed by JobRunr.
This is a functional interface which allows you to schedule jobs based on a Stream and a lambda that will be parsed by JobRunr.
Allows to create a Jira issue directly from JobRunr.
Allows to add a specific name to a job that will be used in the dashboard as well as a custom delete policy, extra jobFilters and server tag filters that will be used for the job.
Defines the job with its JobDetails, History, Job Metadata and JobResult.
This class is used to build a
Job using a job lambda or a JobRequest.A filter that is triggered each time that a Job
is about to be created (before it is saved to the
StorageProvider)
has been created (after it has been saved in the StorageProvider
Please note: Any JobFilter should process really fast.The JobContext class gives access to the Job id, the Job name, the state, ...
A JobFilter allows to extend JobRunr functionality.
Class which represents the Id of the job.
This is a functional interface which represents a lambda that will be parsed by JobRunr.
This is a functional interface which allows you to schedule jobs based on a Stream and a lambda that will be parsed by JobRunr.
Class which represents the Id of the job and allows chaining.
The JobRegressionGuard fetches all the distinct
JobDetails for Jobs and RecurringJobs and check whether the
classes and methods still exist in the current codebase.Allows to add authentication to the
JobRegressionGuard if the dashboard uses authentication / authorization.An implementation of the
JobRegressionGuardAuthenticationProvider that authenticates using Basic Authentication.An implementation of the
JobRegressionGuardAuthenticationProvider that authenticates using OpenId Authentication.Classes implementing this interface can be used to enqueue a JobRunr Job and will be used as the
argument for the actual
JobRequestHandler.Classes implementing this interface will handle the actual
JobRequest.Provides methods for creating fire-and-forget, delayed and recurring jobs as well as to delete existing background jobs.
Contains the Job Result saved when the
Job succeeded.Classes implementing this interface will handle the actual
JobRequest and must return a result.JobResultWithBackOffInfo is a wrapper around the result of a job.The main class to configure JobRunrPro
Provides a dashboard which gives insights in your jobs and servers.
This class allows to configure the JobRunrDashboard
This class allows to read the
JobRunrDashboardWebServerConfigurationA wrapper around a Micrometer
MeterRegistry that allows to integrate Micrometer with JobRunr.This class provides the entry point for the JobRunr configuration.
Provides methods for creating fire-and-forget, delayed and recurring jobs as well as to delete existing background jobs.
Allows to query for
Jobs matching this JobSearchRequest.A builder which allows to easily create a
JobSearchRequest.A filter that is triggered each time that:
a Job starts processing
a Job has been processed
a Job succeeds
a Job fails
a Job fails after all retries are exhausted
Class which takes JobStats and extends them with estimations on how long the work will take based on previous JobStats.
The JobSteward manages everything related to local jobs (e.g.
A JobZooKeeper manages 1 or more JobZooKeeper Tasks like
ProcessScheduledJobsTask and DeleteSucceededJobsTask.JsonMapper that will transform Jobs (and their JobParameters) to Json and back for both storage in the database and
for use in the dashboard.
Deprecated.
no longer used and will be removed in the next major version
A functional interface for providing license keys.
Annotation that must be used if a method is locking a job.
This class allows to combine various RetryPolicies and allows to configure a retry policy per job and exception.
Processes the scheduled tasks that must be ENQUEUED.
Specifies the different priority queues JobRunr will use.
The
RateLimiterManager allows to configure RateLimiters at runtime.Allows to recurrently schedule a method from a bean defined in an IoC framework (e.g.
This class is used to build a
RecurringJob using a job lambda or a JobRequest.Allows to query for
RecurringJobs matching this RecurringJobSearchRequest.A builder which allows to easily create a
RecurringJobSearchRequest.A RetryFilter is a special kind of
ElectStateFilter and will retry failed jobs.Creates a new
RoundRobinDynamicQueuePolicy which provides the BackgroundJobServer with a RoundRobinDynamicQueueStrategy.A Round Robin Dynamic Queue Strategy that cycles through the different Dynamic Queues.
Disclaimer: taken from here https://stackoverflow.com/a/40133286/285091 with some modifications
Class which helps to decide if the job can be updated.
Represents the configuration for a sliding time window rate limiter.
A Wrapper that combines multiple
Runnables and runs then in the given order.An exception that is thrown if a certain step inside a Job fails
The StorageProvider allows to store, retrieve and delete background jobs.
Marker interface for listeners to JobStorage changes
Deprecated.
Is not used anymore in StorageProviders and will be removed
Thrown if a user is unauthorized to access a certain view or to perform a certain action in the dashboard.
A
LicenseKeyProvider implementation that retrieves license keys from a URL.A new implementation of
ConcurrentJobModificationResolver that will always use the latest version of the job found in the database (SQL or NoSQL).A new policy of
ConcurrentJobModificationPolicy that will always use the latest version of the job found in the database (SQL or NoSQL) in case of
a concurrent job modification exception.Concrete factory for creating Unix epoch time-ordered unique identifiers
(UUIDv7).
Concrete builder for creating a Unix epoch time-ordered factory.
Documents why a class, field or method is visible
Creates a new
WeightedRoundRobinDynamicQueuePolicy which provides the BackgroundJobServer with a WeightedRoundRobinDynamicQueueStrategy.A Weighted Round Robin Dynamic Queue Strategy that cycles through the different Dynamic Queues using their respective weights