keycloak
公開メンバ関数 | 非公開変数類 | 全メンバ一覧
org.keycloak.storage.ldap.mappers.LDAPMappersComparator.ImportantFirstComparator クラス
org.keycloak.storage.ldap.mappers.LDAPMappersComparator.ImportantFirstComparator の継承関係図
Inheritance graph
org.keycloak.storage.ldap.mappers.LDAPMappersComparator.ImportantFirstComparator 連携図
Collaboration graph

公開メンバ関数

 ImportantFirstComparator (LDAPConfig ldapConfig)
 
int compare (ComponentModel o1, ComponentModel o2)
 

非公開変数類

final LDAPConfig ldapConfig
 

詳解

構築子と解体子

◆ ImportantFirstComparator()

org.keycloak.storage.ldap.mappers.LDAPMappersComparator.ImportantFirstComparator.ImportantFirstComparator ( LDAPConfig  ldapConfig)
inline
58  {
59  this.ldapConfig = ldapConfig;
60  }
final LDAPConfig ldapConfig
Definition: LDAPMappersComparator.java:56

関数詳解

◆ compare()

int org.keycloak.storage.ldap.mappers.LDAPMappersComparator.ImportantFirstComparator.compare ( ComponentModel  o1,
ComponentModel  o2 
)
inline
63  {
64  // UserAttributeLDAPFederationMapper first
65  boolean isO1AttrMapper = o1.getProviderId().equals(UserAttributeLDAPStorageMapperFactory.PROVIDER_ID);
66  boolean isO2AttrMapper = o2.getProviderId().equals(UserAttributeLDAPStorageMapperFactory.PROVIDER_ID);
67  if (!isO1AttrMapper) {
68  if (isO2AttrMapper) {
69  return 1;
70  } else {
71  return 0;
72  }
73  } else if (!isO2AttrMapper) {
74  return -1;
75  }
76 
77  // Mapper for "username" attribute first
78  String model1 = o1.getConfig().getFirst(UserAttributeLDAPStorageMapper.USER_MODEL_ATTRIBUTE);
79  String model2 = o2.getConfig().getFirst(UserAttributeLDAPStorageMapper.USER_MODEL_ATTRIBUTE);
80  boolean isO1UsernameMapper = model1 != null && model1.equalsIgnoreCase(UserModel.USERNAME);
81  boolean isO2UsernameMapper = model2 != null && model2.equalsIgnoreCase(UserModel.USERNAME);
82  if (!isO1UsernameMapper) {
83  if (isO2UsernameMapper) {
84  return 1;
85  } else {
86  return 0;
87  }
88  } else if (!isO2UsernameMapper) {
89  return -1;
90  }
91 
92  // The username mapper corresponding to the same like configured username for federationProvider is first
93  String o1LdapAttr = o1.getConfig().getFirst(UserAttributeLDAPStorageMapper.LDAP_ATTRIBUTE);
94  String o2LdapAttr = o2.getConfig().getFirst(UserAttributeLDAPStorageMapper.LDAP_ATTRIBUTE);
95  boolean isO1LdapAttr = o1LdapAttr != null && ldapConfig.getUsernameLdapAttribute().equalsIgnoreCase(o1LdapAttr);
96  boolean isO2LdapAttr = o2LdapAttr != null && ldapConfig.getUsernameLdapAttribute().equalsIgnoreCase(o2LdapAttr);
97 
98  if (!isO1LdapAttr) {
99  if (isO2LdapAttr) {
100  return 1;
101  } else {
102  return 0;
103  }
104  } else if (!isO2LdapAttr) {
105  return -1;
106  }
107 
108  return 0;
109  }
final LDAPConfig ldapConfig
Definition: LDAPMappersComparator.java:56
String getUsernameLdapAttribute()
Definition: LDAPConfig.java:188

メンバ詳解

◆ ldapConfig

final LDAPConfig org.keycloak.storage.ldap.mappers.LDAPMappersComparator.ImportantFirstComparator.ldapConfig
private

このクラス詳解は次のファイルから抽出されました: