1 package org.simantics.user;
3 import org.simantics.db.RequestProcessor;
4 import org.simantics.db.Resource;
5 import org.simantics.db.ReadGraph;
6 import org.simantics.db.request.Read;
7 import org.simantics.db.Session;
8 import org.simantics.db.exception.DatabaseException;
9 import org.simantics.db.service.QueryControl;
11 public class UserResource {
13 public final Resource Admin;
14 public final Resource AdminUserAdminRoleAssignment;
15 public final Resource AdminUserModelUserRoleAssignment;
16 public final Resource DefaultRole;
17 public final Resource Group;
18 public final Resource Group_Contains;
19 public final Resource HasEmail;
20 public final Resource HasEmail_Inverse;
21 public final Resource HasPasswordHash;
22 public final Resource HasPasswordHash_Inverse;
23 public final Resource KernelDeveloper;
24 public final Resource LibraryDeveloper;
25 public final Resource ModelConfigurator;
26 public final Resource ModelUser;
27 public final Resource Role;
28 public final Resource RoleAssignment;
29 public final Resource RoleAssignment_HasGroup;
30 public final Resource RoleAssignment_HasRole;
31 public final Resource RoleSelection;
32 public final Resource RoleSelection_HasModel;
33 public final Resource RoleSelection_HasRole;
34 public final Resource Role_Inherits;
35 public final Resource User;
37 public static class URIs {
38 public static final String Admin = "http://www.simantics.org/User-1.1/Admin";
39 public static final String AdminUserAdminRoleAssignment = "http://www.simantics.org/User-1.1/AdminUserAdminRoleAssignment";
40 public static final String AdminUserModelUserRoleAssignment = "http://www.simantics.org/User-1.1/AdminUserModelUserRoleAssignment";
41 public static final String DefaultRole = "http://www.simantics.org/User-1.1/DefaultRole";
42 public static final String Group = "http://www.simantics.org/User-1.1/Group";
43 public static final String Group_Contains = "http://www.simantics.org/User-1.1/Group/Contains";
44 public static final String HasEmail = "http://www.simantics.org/User-1.1/HasEmail";
45 public static final String HasEmail_Inverse = "http://www.simantics.org/User-1.1/HasEmail/Inverse";
46 public static final String HasPasswordHash = "http://www.simantics.org/User-1.1/HasPasswordHash";
47 public static final String HasPasswordHash_Inverse = "http://www.simantics.org/User-1.1/HasPasswordHash/Inverse";
48 public static final String KernelDeveloper = "http://www.simantics.org/User-1.1/KernelDeveloper";
49 public static final String LibraryDeveloper = "http://www.simantics.org/User-1.1/LibraryDeveloper";
50 public static final String ModelConfigurator = "http://www.simantics.org/User-1.1/ModelConfigurator";
51 public static final String ModelUser = "http://www.simantics.org/User-1.1/ModelUser";
52 public static final String Role = "http://www.simantics.org/User-1.1/Role";
53 public static final String RoleAssignment = "http://www.simantics.org/User-1.1/RoleAssignment";
54 public static final String RoleAssignment_HasGroup = "http://www.simantics.org/User-1.1/RoleAssignment/HasGroup";
55 public static final String RoleAssignment_HasRole = "http://www.simantics.org/User-1.1/RoleAssignment/HasRole";
56 public static final String RoleSelection = "http://www.simantics.org/User-1.1/RoleSelection";
57 public static final String RoleSelection_HasModel = "http://www.simantics.org/User-1.1/RoleSelection/HasModel";
58 public static final String RoleSelection_HasRole = "http://www.simantics.org/User-1.1/RoleSelection/HasRole";
59 public static final String Role_Inherits = "http://www.simantics.org/User-1.1/Role/Inherits";
60 public static final String User = "http://www.simantics.org/User-1.1/User";
63 public static Resource getResourceOrNull(ReadGraph graph, String uri) {
65 return graph.getResource(uri);
66 } catch(DatabaseException e) {
67 System.err.println(e.getMessage());
72 public UserResource(ReadGraph graph) {
73 Admin = getResourceOrNull(graph, URIs.Admin);
74 AdminUserAdminRoleAssignment = getResourceOrNull(graph, URIs.AdminUserAdminRoleAssignment);
75 AdminUserModelUserRoleAssignment = getResourceOrNull(graph, URIs.AdminUserModelUserRoleAssignment);
76 DefaultRole = getResourceOrNull(graph, URIs.DefaultRole);
77 Group = getResourceOrNull(graph, URIs.Group);
78 Group_Contains = getResourceOrNull(graph, URIs.Group_Contains);
79 HasEmail = getResourceOrNull(graph, URIs.HasEmail);
80 HasEmail_Inverse = getResourceOrNull(graph, URIs.HasEmail_Inverse);
81 HasPasswordHash = getResourceOrNull(graph, URIs.HasPasswordHash);
82 HasPasswordHash_Inverse = getResourceOrNull(graph, URIs.HasPasswordHash_Inverse);
83 KernelDeveloper = getResourceOrNull(graph, URIs.KernelDeveloper);
84 LibraryDeveloper = getResourceOrNull(graph, URIs.LibraryDeveloper);
85 ModelConfigurator = getResourceOrNull(graph, URIs.ModelConfigurator);
86 ModelUser = getResourceOrNull(graph, URIs.ModelUser);
87 Role = getResourceOrNull(graph, URIs.Role);
88 RoleAssignment = getResourceOrNull(graph, URIs.RoleAssignment);
89 RoleAssignment_HasGroup = getResourceOrNull(graph, URIs.RoleAssignment_HasGroup);
90 RoleAssignment_HasRole = getResourceOrNull(graph, URIs.RoleAssignment_HasRole);
91 RoleSelection = getResourceOrNull(graph, URIs.RoleSelection);
92 RoleSelection_HasModel = getResourceOrNull(graph, URIs.RoleSelection_HasModel);
93 RoleSelection_HasRole = getResourceOrNull(graph, URIs.RoleSelection_HasRole);
94 Role_Inherits = getResourceOrNull(graph, URIs.Role_Inherits);
95 User = getResourceOrNull(graph, URIs.User);
98 public static UserResource getInstance(ReadGraph graph) {
99 Session session = graph.getSession();
100 UserResource ret = session.peekService(UserResource.class);
102 QueryControl qc = graph.getService(QueryControl.class);
103 ret = new UserResource(qc.getIndependentGraph(graph));
104 session.registerService(UserResource.class, ret);
109 public static UserResource getInstance(RequestProcessor session) throws DatabaseException {
110 UserResource ret = session.peekService(UserResource.class);
112 ret = session.syncRequest(new Read<UserResource>() {
113 public UserResource perform(ReadGraph graph) throws DatabaseException {
114 QueryControl qc = graph.getService(QueryControl.class);
115 return new UserResource(qc.getIndependentGraph(graph));
118 session.registerService(UserResource.class, ret);