Retrieve things from the Artifact Repository.
Retrieve things from the Artifact Repository.
Try a function, with square backoff. Uses a threadpool, so can run lots of concurrent things at once.
Try a function, with square backoff. Uses a threadpool, so can run lots of concurrent things at once.
Checkpoint functionality for Agents. Allows setting of checkpoints and function to check if the checkpoint happened more than a period of time ago. Checkpoint identifiers are anything that can be converted to a string, and are hashed.
This is used so that Agents can run in continual loops, only re-trying when a given time period has elapsed, choosing which items to checkpoint on (e.g. per whole domain scan, or per newsfeed).
Doing it this way makes it possible to resume a scan in the face of a crash. It also means that we can add new domains in future, and the Reddit source could back-scan for that domain, regardless of others.
Checkpoints are stored as JSON in case we want to inspect them later. Longs stored as Strings because you can't really trust numbers in JSON.
Checkpoint functionality for Agents. Allows setting of checkpoints and function to check if the checkpoint happened more than a period of time ago. Checkpoint identifiers are anything that can be converted to a string, and are hashed. This is used so that Agents can run in continual loops, only re-trying when a given time period has elapsed, choosing which items to checkpoint on (e.g. per whole domain scan, or per newsfeed). Doing it this way makes it possible to resume a scan in the face of a crash. It also means that we can add new domains in future, and the Reddit source could back-scan for that domain, regardless of others. Checkpoints are stored as JSON in case we want to inspect them later. Longs stored as Strings because you can't really trust numbers in JSON.
Date and time handling functions. Some accept clj-time.date-time objects, some accept YYYY-MM-DD strings. Chosen according to convenience at call site.
Date and time handling functions. Some accept clj-time.date-time objects, some accept YYYY-MM-DD strings. Chosen according to convenience at call site.
Interact with the Event Bus. Retrieval of Events from the Archive is done by prefix. A callback to a lazy sequence, rather than returning that sequence, is done so that the stream can be closed after. The alternative is buffering a very large amount of data.
Interact with the Event Bus. Retrieval of Events from the Archive is done by prefix. A callback to a lazy sequence, rather than returning that sequence, is done so that the stream can be closed after. The alternative is buffering a very large amount of data.
Report to Evidence Log.
Report to Evidence Log.
Middleware for loading verifying JWTs by multiple secrets.
Middleware for loading verifying JWTs by multiple secrets.
Access the Query API
Access the Query API
In-memory storage. For unit testing ONLY.
In-memory storage. For unit testing ONLY.
Storage interface for redis. Provides two interfaces: RedisStore which conforms to Store, and Redis, which contains Redis-specific methods. RedisStore satisfies the event-data-common.storage.storage.Store protocol. All keys are stored in Redis with the given prefix.
Storage interface for redis. Provides two interfaces: RedisStore which conforms to Store, and Redis, which contains Redis-specific methods. RedisStore satisfies the event-data-common.storage.storage.Store protocol. All keys are stored in Redis with the given prefix.
Storage interface for AWS S3.
Storage interface for AWS S3.
A common interface for storing things. Satisfied by Redis for component testing and S3 for integration testing and production.
A common interface for storing things. Satisfied by Redis for component testing and S3 for integration testing and production.
Clean up URLs. Currently removes known tracking parameters.
Clean up URLs. Currently removes known tracking parameters.
Whitelist Events for suitability in the Crossref services. Filter Events for conformity against Artifacts which are cached for an hour.
Whitelist Events for suitability in the Crossref services. Filter Events for conformity against Artifacts which are cached for an hour.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close