Repository

Repository

JDP.RepositoryModule.

Allows saving and loading data to and from the cache(s)

Some kind of item tracked by a tracker

A wrapped Redis connection with associated lock

This is accessed using getconn and with_conn, which get a connection from the (very simple) connection pool.

The lock allows us to make calls to Redis inside @async and @spawn blocks.

Get one or more items of the given in the specified container

The exact behaviour depends on what is requested. If the data can not be retrieved from the local data cache then it may request it from a remote source.

Use with_conn

Refresh the local cached data for the given bug references

Refresh the local cached data for the given item(s)

What data is updated depends on the type of item being refreshed. For items which are logically containers of other items, it may be the contained items which are updated.

Do something with a Redis connection

with_conn(fun::Function)

Run the function fun(conn::RedisConnection)::Any with the connection conn from the connection pool. Returning the connection to the pool before returning.

Example

ret = with_conn() do conn
    echo(conn, "foo")
end
@assert ret == "foo"

Returns the return value of fun.