/* -*- 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 , 14 Nov 1997. * * Contributors: Christoph Toshok */ 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); } }