1 package com.atlassian.user.impl.memory;
2
3 import com.atlassian.user.*;
4 import com.atlassian.user.impl.ReadOnlyGroupManager;
5 import com.atlassian.user.impl.memory.provider.MemoryProvider;
6 import com.atlassian.user.repository.RepositoryIdentifier;
7 import com.atlassian.user.search.page.Pager;
8
9 import java.util.List;
10 import java.util.Collections;
11
12 public class MemoryGroupManagerReadOnly extends ReadOnlyGroupManager
13 {
14 private final RepositoryIdentifier repository;
15 private final MemoryProvider provider;
16
17 public MemoryGroupManagerReadOnly(RepositoryIdentifier config, MemoryProvider provider)
18 {
19 this.repository = config;
20 this.provider = provider;
21 }
22
23 public Pager<Group> getGroups()
24 {
25 return provider.getGroups();
26 }
27
28 public boolean hasMembership(com.atlassian.user.Group group, com.atlassian.user.User user)
29 {
30 return provider.hasMembership(group, user);
31 }
32
33 public boolean supportsExternalMembership() throws EntityException
34 {
35 return false;
36 }
37
38 public com.atlassian.user.Group getGroup(String groupName)
39 {
40 return provider.getGroup(groupName);
41 }
42
43 public Pager<Group> getGroups(User user)
44 {
45 return provider.getGroups(user);
46 }
47
48 public void setUserManager(UserManager userManager)
49 {
50
51 }
52
53 public Pager<String> getMemberNames(com.atlassian.user.Group group)
54 {
55 return provider.getMemberNames(group);
56 }
57
58 public Pager<String> getLocalMemberNames(Group group) throws EntityException
59 {
60 return provider.getLocalMemberNames(group);
61 }
62
63 public Pager<String> getExternalMemberNames(Group group) throws EntityException
64 {
65 throw new UnsupportedOperationException("External membership is not supported");
66 }
67
68
69
70
71 public RepositoryIdentifier getIdentifier()
72 {
73 return repository;
74 }
75
76 public RepositoryIdentifier getRepository(Entity entity) throws EntityException
77 {
78 if (getGroup(entity.getName()) != null)
79 return repository;
80 else
81 return null;
82 }
83 }