RdfEngine implements Engine { @Override public Optional<Role> getRole(String roleName) { if (!roles.contains(roleName)) { return Optional.empty(); } Model roleModel = mf.createModel(); try (RepositoryConnection conn = repository.getConnection()) { RepositoryResult<Statement> statements = conn.getStatements(vf.createIRI(roleNamespace + roleName), null, null, context); statements.forEach(roleModel::add); } return roleFactory.getExisting(vf.createIRI(roleNamespace + roleName), roleModel); }  @Override Optional<Role> getRole(String roleName); @Override Set<User> getUsers(); @Override User createUser(UserConfig userConfig); @Override void storeUser(User user); @Override boolean userExists(String username); @Override boolean userExists(Resource userId); @Override Optional<User> retrieveUser(String username); @Override void updateUser(User newUser); @Override void deleteUser(String username); @Override Set<Group> getGroups(); @Override Group createGroup(GroupConfig groupConfig); @Override void storeGroup(Group group); @Override boolean groupExists(String groupTitle); @Override boolean groupExists(Resource groupId); @Override Optional<Group> retrieveGroup(String groupTitle); @Override void updateGroup(Group newGroup); @Override void deleteGroup(String groupTitle); @Override Set<Role> getUserRoles(String username); @Override boolean checkPassword(String username, String password); @Override String getEngineName(); static final String ENGINE_NAME; }
@Test public void testGetRole() { Optional<Role> roleOptional = engine.getRole("user"); assertTrue(roleOptional.isPresent()); Role role = roleOptional.get(); assertEquals(role.getResource(), (VALUE_FACTORY.createIRI(userRoleId))); }
@Test public void testGetRoleThatDoesNotExist() { Optional<Role> roleOptional = engine.getRole("error"); assertFalse(roleOptional.isPresent()); }