- @Override
- public boolean logout() throws LoginException {
- clearPrincipals(AdminPrincipal.class);
- clearPrincipals(ArgeoSystemPrincipal.class);
- clearPrincipals(AnonymousPrincipal.class);
- clearPrincipals(GrantedAuthorityPrincipal.class);
-
- // we resync with Spring Security since the subject may have been reused
- // in beetween
- // TODO: check if this is clean
- // subject.getPrincipals().addAll(syncPrincipals());
-
- return true;
- }
-
- private <T extends Principal> void clearPrincipals(Class<T> clss) {
- Set<T> principals = subject.getPrincipals(clss);
- if (principals != null)
- principals.clear();
- }
+ // @Override
+ // public boolean logout() throws LoginException {
+ // Set<Principal> principals = subject.getPrincipals();
+ // for (Principal principal : subject.getPrincipals()) {
+ // if ((principal instanceof AdminPrincipal)
+ // || (principal instanceof ArgeoSystemPrincipal)
+ // || (principal instanceof AnonymousPrincipal)
+ // || (principal instanceof GrantedAuthority)) {
+ // principals.remove(principal);
+ // }
+ // }
+ // // clearPrincipals(AdminPrincipal.class);
+ // // clearPrincipals(ArgeoSystemPrincipal.class);
+ // // clearPrincipals(AnonymousPrincipal.class);
+ // // clearPrincipals(GrantedAuthority.class);
+ // return true;
+ // }
+
+ // private <T extends Principal> void clearPrincipals(Class<T> clss) {
+ // Set<T> principals = subject.getPrincipals(clss);
+ // if (principals != null)
+ // principals.clear();
+ // }