package jpaoletti.jpm.security.core; import java.util.ArrayList; import java.util.List; /** * This security connector acceps any user as ok * * @author jpaoletti */ public class PMVoidSecurityConnector extends PMSecurityAbstractConnector { private static final List<PMSecurityUser> users = new ArrayList<PMSecurityUser>(); private static final List<PMSecurityPermission> permissions = new ArrayList<PMSecurityPermission>(); private static final List<PMSecurityUserGroup> groups = new ArrayList<PMSecurityUserGroup>(); static { final PMSecurityPermission sysadmin = new PMSecurityPermission(); sysadmin.setName("sysadmin"); sysadmin.setDescription("Sysadmin"); final PMSecurityPermission useradmin = new PMSecurityPermission(); useradmin.setName("useradmin"); useradmin.setDescription("Useradmin"); permissions.add(useradmin); permissions.add(sysadmin); final PMSecurityUserGroup group = new PMSecurityUserGroup(); group.setName("all"); group.setDescription("All"); group.setId("all"); group.setActive(true); group.setPermissions(permissions); groups.add(group); final PMSecurityUser user = new PMSecurityUser(); user.setUsername("test"); user.setName("test"); user.setPassword(""); user.setActive(true); user.setDeleted(false); user.setChangePassword(false); user.setGroups(groups); users.add(user); } @Override public PMSecurityUser authenticate(String username, String password) throws PMSecurityException { try { return super.authenticate(username, password); } catch (InvalidPasswordException e) { return getUser(username); } } @Override public PMSecurityUser getUser(String username) throws PMSecurityException { return users.get(0); } @Override public List<PMSecurityUser> getUsers() throws PMSecurityException { return users; } @Override public void addUser(PMSecurityUser user) throws PMSecurityException { users.add(user); } @Override public void updateUser(PMSecurityUser user) throws PMSecurityException { } @Override public PMSecurityUserGroup getGroup(String id) throws PMSecurityException { for (PMSecurityUserGroup group : groups) { if (id.equals(group.getId())) { return group; } } return null; } @Override public List<PMSecurityUserGroup> getGroups() throws PMSecurityException { return groups; } @Override public void addGroup(PMSecurityUserGroup group) throws PMSecurityException { groups.add(group); } @Override public void updateGroup(PMSecurityUserGroup group) throws PMSecurityException { } @Override public void removeGroup(PMSecurityUserGroup group) throws PMSecurityException { groups.remove(group); } @Override public List<PMSecurityPermission> getPermissions() throws PMSecurityException { return permissions; } }