gecko-dev/grendel/addressbook/addresscard/LDAP_CardSet.java

90 строки
2.7 KiB
Java

/* -*- Mode: java; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Mozilla Public License
* Version 1.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.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS"
* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
* the License for the specific language governing rights and limitations
* under the License.
*
* The Original Code is the Grendel mail/news client.
*
* The Initial Developer of the Original Code is Netscape Communications
* Corporation. Portions created by Netscape are Copyright (C) 1997
* Netscape Communications Corporation. All Rights Reserved.
*
* Created: Lester Schueler <lesters@netscape.com>, 14 Nov 1997.
*
* Contributors: Christoph Toshok <toshok@netscape.com>
*/
package grendel.addressbook.addresscard;
import netscape.ldap.*;
import java.util.Enumeration;
//************************
//************************
public class LDAP_CardSet implements ICardSet, Enumeration {
private LDAP_Server fParentSource;
private LDAPSearchResults fResultSet;
/** Constructor for LDAP server.
*/
protected LDAP_CardSet (LDAP_Server aParentSource, LDAPSearchResults aResultSet) {
fParentSource = aParentSource;
fResultSet = aResultSet;
}
/** Add a card to the set.
* This only addes the card to the set NOT the source of the set.
*/
public void add (ICard aCard) {
// fCardList.addElement (aCard);
}
/** Remove a card from the set.
* This only removes the card from the set NOT the source of the set.
*/
public void remove (ICard aCard) {
}
/** Sort the set.
*/
public synchronized void sort(String [] sortAttrs) {
boolean[] ascending = {true, true};
fResultSet.sort(new LDAPCompareAttrNames(sortAttrs, ascending));
}
/** Return the card set enumeration.
* We enumerate our own cards.
* FIX: Not multi-threaded!
*/
public Enumeration getEnumeration() {
//initiailize the enumeration cursor.
return this;
}
/** Enumeration methods
*/
public boolean hasMoreElements() {
return fResultSet.hasMoreElements();
}
/** Enumeration methods
*/
public Object nextElement() {
//return the next LDAPentry as an LDAP_Card.
LDAPEntry entry = (LDAPEntry) fResultSet.nextElement();
//cache the element.
// fMyElementCache.add (entry);
//return the LDAPEntry rapped in an ICard interface.
return new LDAP_Card (fParentSource, entry);
}
}