// Path: services/ldap/api/src/main/java/eu/hlavki/identity/services/ldap/model/LdapAccount.java
// @Getter
// @Setter
// @NoArgsConstructor
// public class LdapAccount {
// 
//     public enum Role {
//         EXTERNAL, INTERNAL
//     }
// 
//     private String dn;
//     private String name;
//     private String givenName;
//     private String familyName;
//     private String username;
//     private String subject;
//     private Set<String> emails;
//     private String password;
//     private Role role;
// 
// 
//     public LdapAccount(String dn) {
//         this.dn = dn;
//     }
// 
// 
//     @Override
//     public String toString() {
//         StringBuilder sb = new StringBuilder("[");
//         sb.append("givenName=").append(givenName).
//                 append(", familyName=").append(familyName).
//                 append(", name=").append(name).
//                 append(", username=").append(username).
//                 append(", subject=").append(subject).
//                 append(", emails=").append(emails).
//                 append(", role=").append(role).append("]");
//         return sb.toString();
//     }
// 
//     public String getValueByAttr(String attr) {
//         switch (attr) {
//             case "cn": return getName();
//             case "uid": return getUsername();
//             default: return null;
//         }
//     }
// }


import eu.hlavki.identity.services.ldap.model.LdapAccount;
import java.util.Set;
import javax.xml.bind.annotation.XmlRootElement;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
package eu.hlavki.identity.services.rest.model;


@Getter
@Setter
@NoArgsConstructor
@XmlRootElement
public class AccountInfo {

    private String username;
    private Set<String> emails;
    private String subject;
    private String givenName;
    private String familyName;
    private String name;
    private Role role;
    private boolean syncGsuitePassword;


// Path: services/ldap/api/src/main/java/eu/hlavki/identity/services/ldap/model/LdapAccount.java
// @Getter
// @Setter
// @NoArgsConstructor
// public class LdapAccount {
// 
//     public enum Role {
//         EXTERNAL, INTERNAL
//     }
// 
//     private String dn;
//     private String name;
//     private String givenName;
//     private String familyName;
//     private String username;
//     private String subject;
//     private Set<String> emails;
//     private String password;
//     private Role role;
// 
// 
//     public LdapAccount(String dn) {
//         this.dn = dn;
//     }
// 
// 
//     @Override
//     public String toString() {
//         StringBuilder sb = new StringBuilder("[");
//         sb.append("givenName=").append(givenName).
//                 append(", familyName=").append(familyName).
//                 append(", name=").append(name).
//                 append(", username=").append(username).
//                 append(", subject=").append(subject).
//                 append(", emails=").append(emails).
//                 append(", role=").append(role).append("]");
//         return sb.toString();
//     }
// 
//     public String getValueByAttr(String attr) {
//         switch (attr) {
//             case "cn": return getName();
//             case "uid": return getUsername();
//             default: return null;
//         }
//     }
// }


// Path: services/facade/src/main/java/eu/hlavki/identity/services/rest/model/AccountInfo.java
import eu.hlavki.identity.services.ldap.model.LdapAccount;
import java.util.Set;
import javax.xml.bind.annotation.XmlRootElement;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

package eu.hlavki.identity.services.rest.model;


@Getter
@Setter
@NoArgsConstructor
@XmlRootElement
public class AccountInfo {

    private String username;
    private Set<String> emails;
    private String subject;
    private String givenName;
    private String familyName;
    private String name;
    private Role role;
    private boolean syncGsuitePassword;


    public AccountInfo(LdapAccount ldapAccount) {