gluu
公開メンバ関数 | 非公開メンバ関数 | 非公開変数類 | 静的非公開変数類 | 全メンバ一覧
org.gluu.oxtrust.ldap.service.PersonService クラス
org.gluu.oxtrust.ldap.service.PersonService の継承関係図
Inheritance graph
org.gluu.oxtrust.ldap.service.PersonService 連携図
Collaboration graph

公開メンバ関数

void addCustomObjectClass (GluuCustomPerson person)
 
void addPerson (GluuCustomPerson person) throws Exception
 
void updatePerson (GluuCustomPerson person)
 
void removePerson (GluuCustomPerson person)
 
List< GluuCustomPersonsearchPersons (String pattern, int sizeLimit)
 
List< GluuCustomPersonsearchPersons (String pattern)
 
List< GluuCustomPersonfindPersons (GluuCustomPerson person, int sizeLimit)
 
List< GluuCustomPersonsearchPersons (String pattern, int sizeLimit, List< GluuCustomPerson > excludedPersons) throws Exception
 
List< GluuCustomPersonfindAllPersons (String[] returnAttributes)
 
List< GluuCustomPersonfindPersonsByUids (List< String > uids, String[] returnAttributes) throws Exception
 
List< GluuCustomPersonfindPersonsByMailids (List< String > mailids, String[] returnAttributes) throws Exception
 
GluuCustomPerson findPersonByDn (String dn, String... returnAttributes)
 
boolean containsPerson (GluuCustomPerson person)
 
boolean contains (String dn)
 
GluuCustomPerson getPersonByDn (String dn)
 
GluuCustomPerson getPersonByInum (String inum)
 
GluuCustomPerson getPersonByUid (String uid)
 
int countPersons ()
 
String generateInumForNewPerson ()
 
String generateInameForNewPerson (String uid)
 
String getDnForPerson (String inum)
 
boolean authenticate (String userName, String password)
 
List< GluuCustomAttributegetMandatoryAtributes ()
 
String getPersonUids (List< GluuCustomPerson > persons) throws Exception
 
String getPersonMailids (List< GluuCustomPerson > persons) throws Exception
 
List< GluuCustomPersoncreateEntities (Map< String, List< AttributeData >> entriesAttributes) throws Exception
 
GluuCustomPerson getPersonByEmail (String email)
 
List< GluuCustomPersongetPersonsByUid (String uid)
 
List< GluuCustomPersongetPersonsByEmail (String email)
 
GluuCustomPerson getPersonByAttribute (String attribute, String value) throws Exception
 
User getUserByUid (String uid)
 
List< GluuCustomPersongetPersonsByAttribute (String attribute, String value) throws Exception
 

非公開メンバ関数

String generateInumForNewPersonImpl ()
 
String generateInum ()
 

非公開変数類

Logger log
 
PersistenceEntryManager ldapEntryManager
 
AttributeService attributeService
 
AppConfiguration appConfiguration
 
OrganizationService organizationService
 
List< GluuCustomAttributemandatoryAttributes
 

静的非公開変数類

static final long serialVersionUID = 6685720517520443399L
 

詳解

Provides operations with persons

著者
Yuriy Movchan Date: 10.13.2010

関数詳解

◆ addCustomObjectClass()

void org.gluu.oxtrust.ldap.service.PersonService.addCustomObjectClass ( GluuCustomPerson  person)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

70  {
71  String customObjectClass = attributeService.getCustomOrigin();
72  String[] customObjectClassesArray = person.getCustomObjectClasses();
73  if (ArrayHelper.isNotEmpty(customObjectClassesArray)) {
74  List<String> customObjectClassesList = Arrays.asList(customObjectClassesArray);
75  if (!customObjectClassesList.contains(customObjectClass)) {
76  List<String> customObjectClassesListUpdated = new ArrayList<String>();
77  customObjectClassesListUpdated.addAll(customObjectClassesList);
78  customObjectClassesListUpdated.add(customObjectClass);
79  customObjectClassesList = customObjectClassesListUpdated;
80  }
81 
82  person.setCustomObjectClasses(customObjectClassesList.toArray(new String[0]));
83 
84  } else {
85  person.setCustomObjectClasses(new String[] { customObjectClass });
86  }
87  }
AttributeService attributeService
Definition: PersonService.java:56
String getCustomOrigin()
Definition: AttributeService.java:530

◆ addPerson()

void org.gluu.oxtrust.ldap.service.PersonService.addPerson ( GluuCustomPerson  person) throws Exception
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

95  {
96  GluuCustomPerson uidPerson = new GluuCustomPerson();
97  uidPerson.setUid(person.getUid());
98  List<GluuCustomPerson> persons = findPersons(uidPerson, 1);
99  if (persons == null || persons.size() == 0) {
100  person.setCreationDate(new Date());
101  ldapEntryManager.persist(person);
102  } else {
103  throw new DuplicateEntryException("Duplicate UID value: " + person.getUid());
104  }
105  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
List< GluuCustomPerson > findPersons(GluuCustomPerson person, int sizeLimit)
Definition: PersonService.java:171

◆ authenticate()

boolean org.gluu.oxtrust.ldap.service.PersonService.authenticate ( String  userName,
String  password 
)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

416  {
417  boolean result = ldapEntryManager.authenticate(appConfiguration.getBaseDN(), userName, password);
418 
419  return result;
420  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
AppConfiguration appConfiguration
Definition: PersonService.java:59

◆ contains()

boolean org.gluu.oxtrust.ldap.service.PersonService.contains ( String  dn)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

286  {
287  return ldapEntryManager.contains(GluuCustomPerson.class, dn);
288  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53

◆ containsPerson()

boolean org.gluu.oxtrust.ldap.service.PersonService.containsPerson ( GluuCustomPerson  person)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

271  {
272  boolean result=false;
273  try {
274  result = ldapEntryManager.contains(person);
275  }
276  catch (Exception e){
277  log.debug(e.getMessage(), e);
278  }
279  return result;
280  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
Logger log
Definition: PersonService.java:50

◆ countPersons()

int org.gluu.oxtrust.ldap.service.PersonService.countPersons ( )
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

339  {
340  GluuCustomPerson gluuBasePerson = new GluuCustomPerson();
341  gluuBasePerson.setBaseDn(getDnForPerson(null));
342 
343  return ldapEntryManager.countEntries(gluuBasePerson);
344  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ createEntities()

List<GluuCustomPerson> org.gluu.oxtrust.ldap.service.PersonService.createEntities ( Map< String, List< AttributeData >>  entriesAttributes) throws Exception
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

479  {
480  List<GluuCustomPerson> result = ldapEntryManager.createEntities(GluuCustomPerson.class, entriesAttributes);
481 
482  return result;
483  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53

◆ findAllPersons()

List<GluuCustomPerson> org.gluu.oxtrust.ldap.service.PersonService.findAllPersons ( String []  returnAttributes)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

217  {
218  List<GluuCustomPerson> result = ldapEntryManager.findEntries(getDnForPerson(null), GluuCustomPerson.class, null, returnAttributes);
219 
220  return result;
221  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ findPersonByDn()

GluuCustomPerson org.gluu.oxtrust.ldap.service.PersonService.findPersonByDn ( String  dn,
String...  returnAttributes 
)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

263  {
264  return ldapEntryManager.find(GluuCustomPerson.class, dn, returnAttributes);
265  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53

◆ findPersons()

List<GluuCustomPerson> org.gluu.oxtrust.ldap.service.PersonService.findPersons ( GluuCustomPerson  person,
int  sizeLimit 
)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

171  {
172  person.setBaseDn(getDnForPerson(null));
173  return ldapEntryManager.findEntries(person, sizeLimit);
174  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ findPersonsByMailids()

List<GluuCustomPerson> org.gluu.oxtrust.ldap.service.PersonService.findPersonsByMailids ( List< String >  mailids,
String []  returnAttributes 
) throws Exception
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

245  {
246  List<Filter> mailidFilters = new ArrayList<Filter>();
247  for (String mailid : mailids) {
248  mailidFilters.add(Filter.createEqualityFilter(OxTrustConstants.mail, mailid));
249  }
250 
251  Filter filter = Filter.createORFilter(mailidFilters);
252 
253  List<GluuCustomPerson> result = ldapEntryManager
254  .findEntries(getDnForPerson(null), GluuCustomPerson.class, filter, returnAttributes);
255 
256  return result;
257  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ findPersonsByUids()

List<GluuCustomPerson> org.gluu.oxtrust.ldap.service.PersonService.findPersonsByUids ( List< String >  uids,
String []  returnAttributes 
) throws Exception
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

227  {
228  List<Filter> uidFilters = new ArrayList<Filter>();
229  for (String uid : uids) {
230  uidFilters.add(Filter.createEqualityFilter(OxConstants.UID, uid));
231  }
232 
233  Filter filter = Filter.createORFilter(uidFilters);
234 
235  List<GluuCustomPerson> result = ldapEntryManager
236  .findEntries(getDnForPerson(null), GluuCustomPerson.class, filter, returnAttributes);
237 
238  return result;
239  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ generateInameForNewPerson()

String org.gluu.oxtrust.ldap.service.PersonService.generateInameForNewPerson ( String  uid)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

378  {
379  return String.format("%s*person*%s", appConfiguration.getOrgIname(), uid);
380  }
AppConfiguration appConfiguration
Definition: PersonService.java:59

◆ generateInum()

String org.gluu.oxtrust.ldap.service.PersonService.generateInum ( )
inlineprivate
382  {
383  String inum = "";
384  while (true) {
385  inum = INumGenerator.generate(4);
386  try {
387  BigInteger value = new BigInteger(inum.replace(".", ""), 16);
388  if (value.doubleValue() < 7.0) {
389  continue;
390  }
391  } catch (Exception ex) {
392  log.error("Error generating inum: ", ex);
393  }
394  break;
395  }
396  return inum;
397  }
Logger log
Definition: PersonService.java:50

◆ generateInumForNewPerson()

String org.gluu.oxtrust.ldap.service.PersonService.generateInumForNewPerson ( )
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

350  {
351  GluuCustomPerson person = null;
352  String newInum = null;
353 
354  do {
355  newInum = generateInumForNewPersonImpl();
356  String newDn = getDnForPerson(newInum);
357  person = new GluuCustomPerson();
358  person.setDn(newDn);
359  } while (containsPerson(person));
360  return newInum;
361  }
boolean containsPerson(GluuCustomPerson person)
Definition: PersonService.java:271
String generateInumForNewPersonImpl()
Definition: PersonService.java:369
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ generateInumForNewPersonImpl()

String org.gluu.oxtrust.ldap.service.PersonService.generateInumForNewPersonImpl ( )
inlineprivate

Generate new inum for person

戻り値
New inum for person
例外
Exception
369  {
370  String orgInum = organizationService.getInumForOrganization();
371  return orgInum + OxTrustConstants.inumDelimiter + OxTrustConstants.INUM_PERSON_OBJECTTYPE + OxTrustConstants.inumDelimiter + generateInum();
372  }
OrganizationService organizationService
Definition: PersonService.java:62
String getInumForOrganization()
Definition: OrganizationService.java:189
String generateInum()
Definition: PersonService.java:382

◆ getDnForPerson()

String org.gluu.oxtrust.ldap.service.PersonService.getDnForPerson ( String  inum)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

403  {
404  String orgDn = organizationService.getDnForOrganization();
405  if (StringHelper.isEmpty(inum)) {
406  return String.format("ou=people,%s", orgDn);
407  }
408 
409  return String.format("inum=%s,ou=people,%s", inum, orgDn);
410  }
OrganizationService organizationService
Definition: PersonService.java:62
String getDnForOrganization(String inum)
Definition: OrganizationService.java:106

◆ getMandatoryAtributes()

List<GluuCustomAttribute> org.gluu.oxtrust.ldap.service.PersonService.getMandatoryAtributes ( )
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

426  {
427  if (this.mandatoryAttributes == null) {
428  mandatoryAttributes = new ArrayList<GluuCustomAttribute>();
429  mandatoryAttributes.add(new GluuCustomAttribute("uid", "", true, true));
430  mandatoryAttributes.add(new GluuCustomAttribute("givenName", "", true, true));
431  mandatoryAttributes.add(new GluuCustomAttribute("displayName", "", true, true));
432  mandatoryAttributes.add(new GluuCustomAttribute("sn", "", true, true));
433  mandatoryAttributes.add(new GluuCustomAttribute("mail", "", true, true));
434  mandatoryAttributes.add(new GluuCustomAttribute("userPassword", "", true, true));
435  mandatoryAttributes.add(new GluuCustomAttribute("gluuStatus", "", true, true));
436  }
437 
438  return mandatoryAttributes;
439  }
List< GluuCustomAttribute > mandatoryAttributes
Definition: PersonService.java:64

◆ getPersonByAttribute()

GluuCustomPerson org.gluu.oxtrust.ldap.service.PersonService.getPersonByAttribute ( String  attribute,
String  value 
) throws Exception
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

536  {
537  GluuCustomPerson person = new GluuCustomPerson();
538  person.setBaseDn(getDnForPerson(null));
539  person.setAttribute(attribute, value);
540 
541  List<GluuCustomPerson> persons = ldapEntryManager.findEntries(person);
542 
543  if ((persons != null) && (persons.size() > 0)) {
544  return persons.get(0);
545  }
546 
547  return null;
548  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ getPersonByDn()

GluuCustomPerson org.gluu.oxtrust.ldap.service.PersonService.getPersonByDn ( String  dn)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

294  {
295  GluuCustomPerson result = ldapEntryManager.find(GluuCustomPerson.class, dn);
296 
297  return result;
298 
299  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53

◆ getPersonByEmail()

GluuCustomPerson org.gluu.oxtrust.ldap.service.PersonService.getPersonByEmail ( String  email)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

489  {
490  GluuCustomPerson person = new GluuCustomPerson();
491  person.setBaseDn(getDnForPerson(null));
492  person.setMail(email);
493 
494  List<GluuCustomPerson> persons = ldapEntryManager.findEntries(person);
495 
496  if ((persons != null) && (persons.size() > 0)) {
497  return persons.get(0);
498  }
499 
500  return null;
501  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ getPersonByInum()

GluuCustomPerson org.gluu.oxtrust.ldap.service.PersonService.getPersonByInum ( String  inum)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

305  {
306  GluuCustomPerson person = null;
307  try{
308  person = ldapEntryManager.find(GluuCustomPerson.class, getDnForPerson(inum));
309  }catch (Exception e) {
310  log.error("Failed to find Person by Inum " + inum, e);
311  }
312 
313 
314  return person;
315  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
Logger log
Definition: PersonService.java:50
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ getPersonByUid()

GluuCustomPerson org.gluu.oxtrust.ldap.service.PersonService.getPersonByUid ( String  uid)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

321  {
322  GluuCustomPerson person = new GluuCustomPerson();
323  person.setBaseDn(getDnForPerson(null));
324  person.setUid(uid);
325 
326  List<GluuCustomPerson> persons = ldapEntryManager.findEntries(person);
327 
328  if ((persons != null) && (persons.size() > 0)) {
329  return persons.get(0);
330  }
331 
332  return null;
333  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ getPersonMailids()

String org.gluu.oxtrust.ldap.service.PersonService.getPersonMailids ( List< GluuCustomPerson persons) throws Exception
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

462  {
463  StringBuilder sb = new StringBuilder();
464 
465  for (Iterator<GluuCustomPerson> iterator = persons.iterator(); iterator.hasNext();) {
466  GluuCustomPerson call = iterator.next();
467  sb.append('\'').append(call.getMail()).append('\'');
468  if (iterator.hasNext()) {
469  sb.append(", ");
470  }
471  }
472  return sb.toString();
473  }

◆ getPersonsByAttribute()

List<GluuCustomPerson> org.gluu.oxtrust.ldap.service.PersonService.getPersonsByAttribute ( String  attribute,
String  value 
) throws Exception
inline

Get list of persons by attribute

引数
attributeattribute
valuevalue
戻り値
List <Person>

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

579  {
580  log.info("atttriburte : " + attribute + " value : "+value);
581  GluuCustomPerson person = new GluuCustomPerson();
582  person.setBaseDn(getDnForPerson(null));
583  person.setAttribute(attribute, value);
584 
585  List<GluuCustomPerson> persons = ldapEntryManager.findEntries(person);
586  log.info("list : " + (persons));
587  if ((persons != null) && (persons.size() > 0)) {
588  return persons;
589  }
590 
591  return null;
592  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
Logger log
Definition: PersonService.java:50
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ getPersonsByEmail()

List<GluuCustomPerson> org.gluu.oxtrust.ldap.service.PersonService.getPersonsByEmail ( String  email)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

522  {
523  GluuCustomPerson person = new GluuCustomPerson();
524  person.setBaseDn(getDnForPerson(null));
525  person.setMail(email);
526 
527  List<GluuCustomPerson> persons = ldapEntryManager.findEntries(person);
528 
529  return persons ;
530  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ getPersonsByUid()

List<GluuCustomPerson> org.gluu.oxtrust.ldap.service.PersonService.getPersonsByUid ( String  uid)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

507  {
508  GluuCustomPerson person = new GluuCustomPerson();
509  person.setBaseDn(getDnForPerson(null));
510  person.setUid(uid);
511 
512  List<GluuCustomPerson> persons = ldapEntryManager.findEntries(person);
513 
514  return persons;
515  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ getPersonUids()

String org.gluu.oxtrust.ldap.service.PersonService.getPersonUids ( List< GluuCustomPerson persons) throws Exception
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

445  {
446  StringBuilder sb = new StringBuilder();
447 
448  for (Iterator<GluuCustomPerson> iterator = persons.iterator(); iterator.hasNext();) {
449  GluuCustomPerson call = iterator.next();
450  sb.append('\'').append(call.getUid()).append('\'');
451  if (iterator.hasNext()) {
452  sb.append(", ");
453  }
454  }
455  return sb.toString();
456  }

◆ getUserByUid()

User org.gluu.oxtrust.ldap.service.PersonService.getUserByUid ( String  uid)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

554  {
555 
556  User user = new User();
557 
558  user.setBaseDn(getDnForPerson(null));
559  user.setUid(uid);
560 
561  List<User> users = ldapEntryManager.findEntries(user);// getLdapEntryManagerInstance().findEntries(person);
562  if ((users != null) && (users.size() > 0)) {
563  return users.get(0);
564  }
565 
566  return null;
567  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ removePerson()

void org.gluu.oxtrust.ldap.service.PersonService.removePerson ( GluuCustomPerson  person)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

126  {
127  // Remove person
128  ldapEntryManager.removeRecursively(person.getDn());
129  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53

◆ searchPersons() [1/3]

List<GluuCustomPerson> org.gluu.oxtrust.ldap.service.PersonService.searchPersons ( String  pattern,
int  sizeLimit 
)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

135  {
136  String[] targetArray = new String[] { pattern };
137  Filter uidFilter = Filter.createSubstringFilter(OxConstants.UID, null, targetArray, null);
138  Filter mailFilter = Filter.createSubstringFilter(OxTrustConstants.mail, null, targetArray, null);
139  Filter nameFilter = Filter.createSubstringFilter(OxTrustConstants.displayName, null, targetArray, null);
140  Filter inameFilter = Filter.createSubstringFilter(OxTrustConstants.iname, null, targetArray, null);
141  Filter searchFilter = Filter.createORFilter(uidFilter, mailFilter, nameFilter, inameFilter);
142 
143  List<GluuCustomPerson> result = ldapEntryManager.findEntries(getDnForPerson(null), GluuCustomPerson.class, searchFilter, sizeLimit);
144 
145  return result;
146  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ searchPersons() [2/3]

List<GluuCustomPerson> org.gluu.oxtrust.ldap.service.PersonService.searchPersons ( String  pattern)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

152  {
153  String[] targetArray = new String[] { pattern };
154  Filter uidFilter = Filter.createSubstringFilter(OxConstants.UID, null, targetArray, null);
155  Filter mailFilter = Filter.createSubstringFilter(OxTrustConstants.mail, null, targetArray, null);
156  Filter nameFilter = Filter.createSubstringFilter(OxTrustConstants.displayName, null, targetArray, null);
157  Filter inameFilter = Filter.createSubstringFilter(OxTrustConstants.iname, null, targetArray, null);
158  Filter ppidFilter = Filter.createSubstringFilter(OxTrustConstants.ppid, null, targetArray, null);
159  Filter inumFilter = Filter.createSubstringFilter(OxTrustConstants.inum, null, targetArray, null);
160  Filter searchFilter = Filter.createORFilter(uidFilter, mailFilter, nameFilter, inameFilter, ppidFilter, inumFilter);
161 
162  List<GluuCustomPerson> result = ldapEntryManager.findEntries(getDnForPerson(null), GluuCustomPerson.class, searchFilter);
163 
164  return result;
165  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ searchPersons() [3/3]

List<GluuCustomPerson> org.gluu.oxtrust.ldap.service.PersonService.searchPersons ( String  pattern,
int  sizeLimit,
List< GluuCustomPerson excludedPersons 
) throws Exception
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

180  {
181  String[] targetArray = new String[] { pattern };
182  Filter uidFilter = Filter.createSubstringFilter(OxConstants.UID, null, targetArray, null);
183  Filter mailFilter = Filter.createSubstringFilter(OxTrustConstants.mail, null, targetArray, null);
184  Filter nameFilter = Filter.createSubstringFilter(OxTrustConstants.displayName, null, targetArray, null);
185  Filter inameFilter = Filter.createSubstringFilter(OxTrustConstants.iname, null, targetArray, null);
186 
187  Filter orFilter = Filter.createORFilter(uidFilter, mailFilter, nameFilter, inameFilter);
188 
189  Filter searchFilter = orFilter;
190 
191  if (excludedPersons != null && excludedPersons.size() > 0) {
192  List<Filter> excludeFilters = new ArrayList<Filter>();
193  for (GluuCustomPerson excludedPerson : excludedPersons) {
194  Filter eqFilter = Filter.createEqualityFilter(OxConstants.UID, excludedPerson.getUid());
195  excludeFilters.add(eqFilter);
196  }
197  Filter orExcludeFilter = null;
198  if (excludedPersons.size() == 1) {
199  orExcludeFilter = excludeFilters.get(0);
200  } else {
201  orExcludeFilter = Filter.createORFilter(excludeFilters);
202  }
203  Filter notFilter = Filter.createNOTFilter(orExcludeFilter);
204  searchFilter = Filter.createANDFilter(orFilter, notFilter);
205  }
206 
207  List<GluuCustomPerson> result = ldapEntryManager.findEntries(getDnForPerson(null), GluuCustomPerson.class, searchFilter, sizeLimit);
208 
209  return result;
210 
211  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53
String getDnForPerson(String inum)
Definition: PersonService.java:403

◆ updatePerson()

void org.gluu.oxtrust.ldap.service.PersonService.updatePerson ( GluuCustomPerson  person)
inline

org.gluu.oxtrust.ldap.service.IPersonServiceを実装しています。

111  {
112 
113  Date updateDate = new Date();
114  person.setUpdatedAt(updateDate);
115  //Update oxTrustMetaLastModified if it has been previously set
116  if (person.getAttribute("oxTrustMetaLastModified") != null) {
117  person.setAttribute("oxTrustMetaLastModified", ISODateTimeFormat.dateTime().withZoneUTC().print(updateDate.getTime()));
118  }
119  ldapEntryManager.merge(person);
120  }
PersistenceEntryManager ldapEntryManager
Definition: PersonService.java:53

メンバ詳解

◆ appConfiguration

AppConfiguration org.gluu.oxtrust.ldap.service.PersonService.appConfiguration
private

◆ attributeService

AttributeService org.gluu.oxtrust.ldap.service.PersonService.attributeService
private

◆ ldapEntryManager

PersistenceEntryManager org.gluu.oxtrust.ldap.service.PersonService.ldapEntryManager
private

◆ log

Logger org.gluu.oxtrust.ldap.service.PersonService.log
private

◆ mandatoryAttributes

List<GluuCustomAttribute> org.gluu.oxtrust.ldap.service.PersonService.mandatoryAttributes
private

◆ organizationService

OrganizationService org.gluu.oxtrust.ldap.service.PersonService.organizationService
private

◆ serialVersionUID

final long org.gluu.oxtrust.ldap.service.PersonService.serialVersionUID = 6685720517520443399L
staticprivate

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