Using pattern matching for instanceof

This commit is contained in:
Seongguk Jeong 2023-07-09 23:53:53 +09:00 committed by Josh Cummings
parent cd6f33c03e
commit ea19f82b8a
3 changed files with 9 additions and 12 deletions

View File

@ -68,14 +68,14 @@ public abstract class AbstractAuthenticationToken implements Authentication, Cre
@Override @Override
public String getName() { public String getName() {
if (this.getPrincipal() instanceof UserDetails) { if (this.getPrincipal() instanceof UserDetails userDetails) {
return ((UserDetails) this.getPrincipal()).getUsername(); return userDetails.getUsername();
} }
if (this.getPrincipal() instanceof AuthenticatedPrincipal) { if (this.getPrincipal() instanceof AuthenticatedPrincipal authenticatedPrincipal) {
return ((AuthenticatedPrincipal) this.getPrincipal()).getName(); return authenticatedPrincipal.getName();
} }
if (this.getPrincipal() instanceof Principal) { if (this.getPrincipal() instanceof Principal principal) {
return ((Principal) this.getPrincipal()).getName(); return principal.getName();
} }
return (this.getPrincipal() == null) ? "" : this.getPrincipal().toString(); return (this.getPrincipal() == null) ? "" : this.getPrincipal().toString();
} }
@ -119,10 +119,9 @@ public abstract class AbstractAuthenticationToken implements Authentication, Cre
@Override @Override
public boolean equals(Object obj) { public boolean equals(Object obj) {
if (!(obj instanceof AbstractAuthenticationToken)) { if (!(obj instanceof AbstractAuthenticationToken test)) {
return false; return false;
} }
AbstractAuthenticationToken test = (AbstractAuthenticationToken) obj;
if (!this.authorities.equals(test.authorities)) { if (!this.authorities.equals(test.authorities)) {
return false; return false;
} }

View File

@ -74,8 +74,7 @@ public class AnonymousAuthenticationToken extends AbstractAuthenticationToken im
if (!super.equals(obj)) { if (!super.equals(obj)) {
return false; return false;
} }
if (obj instanceof AnonymousAuthenticationToken) { if (obj instanceof AnonymousAuthenticationToken test) {
AnonymousAuthenticationToken test = (AnonymousAuthenticationToken) obj;
return (this.getKeyHash() == test.getKeyHash()); return (this.getKeyHash() == test.getKeyHash());
} }
return false; return false;

View File

@ -127,10 +127,9 @@ public class JaasApiIntegrationFilter extends GenericFilterBean {
if (!authentication.isAuthenticated()) { if (!authentication.isAuthenticated()) {
return null; return null;
} }
if (!(authentication instanceof JaasAuthenticationToken)) { if (!(authentication instanceof JaasAuthenticationToken token)) {
return null; return null;
} }
JaasAuthenticationToken token = (JaasAuthenticationToken) authentication;
LoginContext loginContext = token.getLoginContext(); LoginContext loginContext = token.getLoginContext();
if (loginContext == null) { if (loginContext == null) {
return null; return null;