io.gravitee.management.idp.api.authentication.UserDetails Maven / Gradle / Ivy
/**
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.gravitee.management.idp.api.authentication;
import com.fasterxml.jackson.annotation.JsonIgnore;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.userdetails.User;
import java.util.Collection;
import java.util.List;
/**
* @author Azize ELAMRANI (azize.elamrani at graviteesource.com)
* @author Nicolas GERAUD (nicolas.geraud at graviteesource.com)
* @author GraviteeSource Team
*/
public class UserDetails extends User {
private String id;
private String email;
private String firstname;
private String lastname;
private String source;
private String sourceId;
private List roles;
private String username;
public UserDetails(String username, String password, Collection extends GrantedAuthority> authorities) {
super(username, password, authorities);
this.username = username;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
@Override
@JsonIgnore
public String getUsername() {
return username;
}
@Override
@JsonIgnore
public String getPassword() {
return super.getPassword();
}
@Override
public boolean isEnabled() {
return super.isEnabled();
}
@Override
@JsonIgnore
public boolean isAccountNonExpired() {
return super.isAccountNonExpired();
}
@Override
@JsonIgnore
public boolean isAccountNonLocked() {
return super.isAccountNonLocked();
}
@Override
@JsonIgnore
public boolean isCredentialsNonExpired() {
return super.isCredentialsNonExpired();
}
public void setUsername(String username) {
this.username = username;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getFirstname() {
return firstname;
}
public void setFirstname(String firstname) {
this.firstname = firstname;
}
public String getLastname() {
return lastname;
}
public String getDisplayName() {
String displayName;
if (firstname != null || lastname != null) {
displayName = firstname + ' ' + lastname;
} else if (email != null){
displayName = email;
} else {
displayName = sourceId;
}
return displayName;
}
public void setLastname(String lastname) {
this.lastname = lastname;
}
public String getSource() {
return source;
}
public void setSource(String source) {
this.source = source;
}
public String getSourceId() {
return sourceId;
}
public void setSourceId(String sourceId) {
this.sourceId = sourceId;
}
public List getRoles() {
return roles;
}
public void setRoles(List roles) {
this.roles = roles;
}
@Override
public String toString() {
return super.toString() +
", email='" + email + '\'' +
", firstname='" + firstname + '\'' +
", lastname='" + lastname + '\'' +
", source='" + lastname + '\'' +
", external_reference='" + lastname + '\'' +
"}";
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy