132 query.addReturningLdapAttribute(ldapFullNameAttrName);
135 EqualCondition firstNameCondition = null;
136 EqualCondition lastNameCondition = null;
137 Set<Condition> conditionsCopy =
new HashSet<Condition>(query.getConditions());
138 for (Condition condition : conditionsCopy) {
139 String paramName = condition.getParameterName();
140 if (paramName != null) {
141 if (paramName.equals(UserModel.FIRST_NAME)) {
142 firstNameCondition = (EqualCondition) condition;
143 query.getConditions().remove(condition);
144 }
else if (paramName.equals(UserModel.LAST_NAME)) {
145 lastNameCondition = (EqualCondition) condition;
146 query.getConditions().remove(condition);
147 }
else if (paramName.equals(LDAPConstants.GIVENNAME)) {
149 firstNameCondition = (EqualCondition) condition;
150 }
else if (paramName.equals(LDAPConstants.SN)) {
152 lastNameCondition = (EqualCondition) condition;
158 String fullName = null;
159 if (firstNameCondition != null && lastNameCondition != null) {
160 fullName = firstNameCondition.getValue() +
" " + lastNameCondition.getValue();
161 }
else if (firstNameCondition != null) {
162 fullName = (String) firstNameCondition.getValue();
163 }
else if (lastNameCondition != null) {
164 fullName = (String) lastNameCondition.getValue();
169 EscapeStrategy escapeStrategy = firstNameCondition!=null ? firstNameCondition.getEscapeStrategy() : lastNameCondition.getEscapeStrategy();
171 EqualCondition fullNameCondition =
new EqualCondition(ldapFullNameAttrName, fullName, escapeStrategy);
172 query.addWhereCondition(fullNameCondition);
boolean isWriteOnly()
Definition: FullNameLDAPStorageMapper.java:202
String getLdapFullNameAttrName()
Definition: FullNameLDAPStorageMapper.java:175