1 package com.atlassian.user.configuration;
2
3 import java.util.List;
4
5 /**
6 * Given to an application to access the delegation of repositories.
7 */
8 public interface DelegationAccessor extends RepositoryAccessor
9 {
10 /**
11 * @return the {@link RepositoryAccessor} for the repository with the specified key, or <tt>null</tt> if
12 * no repository exists for the given key.
13 */
14 RepositoryAccessor getRepositoryAccessor(String key);
15
16 /**
17 * @return a list of {@link RepositoryAccessor}s in the order of delegation.
18 */
19 List getRepositoryAccessors();
20
21 /**
22 * Adds a {@link RepositoryAccessor} to the end of the delegation order.
23 */
24 void addRepositoryAccessor(RepositoryAccessor accessor);
25 }