1 package com.atlassian.sal.api.executor;
2
3 /**
4 * Manager for retrieving and storing a single object which represents all thread local state
5 */
6 public interface ThreadLocalContextManager<C extends ThreadLocalContext>
7 {
8 /**
9 * Get the thread local context of the current thread
10 *
11 * @return The thread local context
12 */
13 C getThreadLocalContext();
14
15 /**
16 * Set the thread local context on the current thread
17 *
18 * @param context The context to set
19 */
20 void setThreadLocalContext(C context);
21
22 /**
23 * Clear the thread local context on the current thread
24 */
25 void clearThreadLocalContext();
26
27 }