1 package org.opendaylight.aaa.authn.mdsal.store;
5 import org.opendaylight.aaa.api.IDMStoreException;
6 import org.opendaylight.aaa.api.IDMStoreUtil;
7 import org.opendaylight.aaa.api.IIDMStore;
8 import org.opendaylight.aaa.api.model.Domain;
9 import org.opendaylight.aaa.api.model.Domains;
10 import org.opendaylight.aaa.api.model.Grant;
11 import org.opendaylight.aaa.api.model.Grants;
12 import org.opendaylight.aaa.api.model.Role;
13 import org.opendaylight.aaa.api.model.Roles;
14 import org.opendaylight.aaa.api.model.User;
15 import org.opendaylight.aaa.api.model.Users;
17 public class IDMStore implements IIDMStore{
18 private final IDMMDSALStore mdsalStore;
20 public IDMStore(IDMMDSALStore mdsalStore){
21 this.mdsalStore = mdsalStore;
25 public Domain writeDomain(Domain domain) throws IDMStoreException {
26 return IDMObject2MDSAL.toIDMDomain(mdsalStore.writeDomain(IDMObject2MDSAL.toMDSALDomain(domain)));
30 public Domain readDomain(String domainid) throws IDMStoreException {
31 return IDMObject2MDSAL.toIDMDomain(mdsalStore.readDomain(domainid));
35 public Domain deleteDomain(String domainid) throws IDMStoreException {
36 return IDMObject2MDSAL.toIDMDomain(mdsalStore.deleteDomain(domainid));
40 public Domain updateDomain(Domain domain) throws IDMStoreException {
41 return IDMObject2MDSAL.toIDMDomain(mdsalStore.updateDomain(IDMObject2MDSAL.toMDSALDomain(domain)));
45 public Domains getDomains() throws IDMStoreException {
46 Domains domains = new Domains();
47 List<org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.Domain> mdSalDomains = mdsalStore.getAllDomains();
48 for(org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.Domain d:mdSalDomains){
49 domains.getDomains().add(IDMObject2MDSAL.toIDMDomain(d));
55 public Role writeRole(Role role) throws IDMStoreException {
56 return IDMObject2MDSAL.toIDMRole(mdsalStore.writeRole(IDMObject2MDSAL.toMDSALRole(role)));
60 public Role readRole(String roleid) throws IDMStoreException {
61 return IDMObject2MDSAL.toIDMRole(mdsalStore.readRole(roleid));
65 public Role deleteRole(String roleid) throws IDMStoreException {
66 return IDMObject2MDSAL.toIDMRole(mdsalStore.deleteRole(roleid));
70 public Role updateRole(Role role) throws IDMStoreException {
71 return IDMObject2MDSAL.toIDMRole(mdsalStore.writeRole(IDMObject2MDSAL.toMDSALRole(role)));
75 public User writeUser(User user) throws IDMStoreException {
76 return IDMObject2MDSAL.toIDMUser(mdsalStore.writeUser(IDMObject2MDSAL.toMDSALUser(user)));
80 public User readUser(String userid) throws IDMStoreException {
81 return IDMObject2MDSAL.toIDMUser(mdsalStore.readUser(userid));
85 public User deleteUser(String userid) throws IDMStoreException {
86 return IDMObject2MDSAL.toIDMUser(mdsalStore.deleteUser(userid));
90 public User updateUser(User user) throws IDMStoreException {
91 return IDMObject2MDSAL.toIDMUser(mdsalStore.writeUser(IDMObject2MDSAL.toMDSALUser(user)));
95 public Grant writeGrant(Grant grant) throws IDMStoreException {
96 return IDMObject2MDSAL.toIDMGrant(mdsalStore.writeGrant(IDMObject2MDSAL.toMDSALGrant(grant)));
100 public Grant readGrant(String grantid) throws IDMStoreException {
101 return IDMObject2MDSAL.toIDMGrant(mdsalStore.readGrant(grantid));
105 public Grant deleteGrant(String grantid) throws IDMStoreException {
106 return IDMObject2MDSAL.toIDMGrant(mdsalStore.readGrant(grantid));
110 public Roles getRoles() throws IDMStoreException {
111 Roles roles = new Roles();
112 List<org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.Role> mdSalRoles = mdsalStore.getAllRoles();
113 for(org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.Role r:mdSalRoles){
114 roles.getRoles().add(IDMObject2MDSAL.toIDMRole(r));
120 public Users getUsers() throws IDMStoreException {
121 Users users = new Users();
122 List<org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.User> mdSalUsers = mdsalStore.getAllUsers();
123 for(org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.User u:mdSalUsers){
124 users.getUsers().add(IDMObject2MDSAL.toIDMUser(u));
130 public Users getUsers(String username, String domain) throws IDMStoreException {
131 Users users = new Users();
132 List<org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.User> mdSalUsers = mdsalStore.getAllUsers();
133 for(org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.User u:mdSalUsers){
134 if(u.getDomainid().equals(domain) && u.getName().equals(username)){
135 users.getUsers().add(IDMObject2MDSAL.toIDMUser(u));
142 public Grants getGrants(String domainid, String userid) throws IDMStoreException {
143 Grants grants = new Grants();
144 List<org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.Grant> mdSalGrants = mdsalStore.getAllGrants();
145 for(org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.Grant g:mdSalGrants){
146 grants.getGrants().add(IDMObject2MDSAL.toIDMGrant(g));
152 public Grants getGrants(String userid) throws IDMStoreException {
153 Grants grants = new Grants();
154 List<org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.Grant> mdSalGrants = mdsalStore.getAllGrants();
155 for(org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.Grant g:mdSalGrants){
156 if(g.getUserid().equals(userid)){
157 grants.getGrants().add(IDMObject2MDSAL.toIDMGrant(g));
164 public Grant readGrant(String domainid, String userid, String roleid) throws IDMStoreException {
165 return readGrant(IDMStoreUtil.createGrantid(userid, domainid, roleid));