1 package com.atlassian.vcache.internal;
2
3 /**
4 * The management interface specific for a partition-aware {@link VCacheLifecycleManager}.
5 *
6 * @since 1.0
7 */
8 public interface PartitionAwareVCacheLifecycleManager extends VCacheLifecycleManager
9 {
10 /**
11 * To be called before a thread is about to perform a request (unit of work). This method must be called only
12 * once, and nested called are not allowed. Use {@link #isRequestInProgress()} to check whether a
13 * request is currently in progress.
14 *
15 * @param partition the identifier of the partition to associate with the request. The identifier may only contain
16 * the characters {@code A-Z}, {@code a-z}, {@code ./-_$}.
17
18 * @throws IllegalStateException a request is currently in progress for this thread.
19 */
20 void requestSetup(String partition);
21 }