pjs/grendel/addressbook/addresscard/LDAP_AttributeSet.java

88 строки
2.6 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_AttributeSet implements IAttributeSet, Enumeration {
private LDAPAttributeSet fMyAttributeSet;
private Enumeration fAttrEnum;
/** Create a new emtpy AttributeSet
*/
protected LDAP_AttributeSet (LDAPAttributeSet aSet) {
fMyAttributeSet = aSet;
}
/** Add an attrbiute to the set.
*/
// public void add(AC_Attribute anAttribute) {
// fSet.put (anAttribute.getName(), anAttribute.getValue());
// }
/** Return the named attribute.
*/
public IAttribute getAttribute(String anAttributeName) {
return new LDAP_Attribute (fMyAttributeSet.getAttribute(anAttributeName));
}
/** Return the number of attributes in the set.
*/
public int size() {
return fMyAttributeSet.size();
}
/** Return the attribute set enumeration.
* We enumerate our own attribute set.
*/
public Enumeration getEnumeration() {
//FIX: Not multi-threaded!
//initiailize the enumeration cursor.
fAttrEnum = fMyAttributeSet.getAttributes();
return this;
}
/** Enumeration methods
*/
public boolean hasMoreElements() {
return fAttrEnum.hasMoreElements();
}
/** Enumeration methods
*/
public Object nextElement() {
//get the next attribute.
LDAPAttribute attr = (LDAPAttribute) fAttrEnum.nextElement();
//cache the element.
// fMyElementCache.add (card);
//return the LDAPAttribute rapped in a IAttribute.
return new LDAP_Attribute (attr);
}
}