summaryrefslogtreecommitdiffstats
path: root/libjava/javax/naming/directory/BasicAttributes.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/javax/naming/directory/BasicAttributes.java')
-rw-r--r--libjava/javax/naming/directory/BasicAttributes.java238
1 files changed, 0 insertions, 238 deletions
diff --git a/libjava/javax/naming/directory/BasicAttributes.java b/libjava/javax/naming/directory/BasicAttributes.java
deleted file mode 100644
index 37ec195771e..00000000000
--- a/libjava/javax/naming/directory/BasicAttributes.java
+++ /dev/null
@@ -1,238 +0,0 @@
-/* BasicAttributes.java --
- Copyright (C) 2000, 2001, 2004, 2005 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package javax.naming.directory;
-
-import java.util.NoSuchElementException;
-import java.util.Vector;
-
-import javax.naming.NamingEnumeration;
-import javax.naming.NamingException;
-
-/**
- * @author Tom Tromey (tromey@redhat.com)
- * @date June 22, 2001
- */
-public class BasicAttributes implements Attributes
-{
- private static final long serialVersionUID = 4980164073184639448L;
-
- public BasicAttributes ()
- {
- this (false);
- }
-
- public BasicAttributes (boolean ignoreCase)
- {
- this.ignoreCase = ignoreCase;
- this.attributes = new Vector ();
- }
-
- public BasicAttributes (String attrID, Object val)
- {
- this (attrID, val, false);
- }
-
- public BasicAttributes (String attrID, Object val, boolean ignoreCase)
- {
- this.ignoreCase = ignoreCase;
- attributes = new Vector ();
- attributes.add (new BasicAttribute (attrID, val));
- }
-
- public Object clone ()
- {
- // Slightly inefficient as we make a garbage Vector here.
- BasicAttributes ba = new BasicAttributes (ignoreCase);
- ba.attributes = (Vector) attributes.clone ();
- return ba;
- }
-
- /**
- * Returns true if and only if the given Object is an instance of
- * Attributes, the given attributes both do or don't ignore case for
- * IDs and the collection of attributes is the same.
- */
- public boolean equals (Object obj)
- {
- if (! (obj instanceof Attributes))
- return false;
-
- Attributes bs = (Attributes) obj;
- if (ignoreCase != bs.isCaseIgnored()
- || attributes.size () != bs.size ())
- return false;
-
- NamingEnumeration bas = bs.getAll();
- while (bas.hasMoreElements())
- {
- Attribute a = (Attribute) bas.nextElement();
- Attribute b = get(a.getID ());
- if (! a.equals(b))
- return false;
- }
-
- return true;
- }
-
- public Attribute get (String attrID)
- {
- for (int i = 0; i < attributes.size (); ++i)
- {
- Attribute at = (Attribute) attributes.get (i);
- if ((ignoreCase && attrID.equalsIgnoreCase (at.getID ()))
- || (! ignoreCase && attrID.equals (at.getID ())))
- return at;
- }
-
- return null;
- }
-
- public NamingEnumeration getAll ()
- {
- return new BasicAttributesEnumeration (false);
- }
-
- public NamingEnumeration getIDs ()
- {
- return new BasicAttributesEnumeration (true);
- }
-
- public int hashCode ()
- {
- int val = 0;
- for (int i = 0; i < attributes.size (); ++i)
- val += attributes.get (i).hashCode ();
- return val;
- }
-
- public boolean isCaseIgnored ()
- {
- return ignoreCase;
- }
-
- public Attribute put (Attribute attr)
- {
- Attribute r = remove (attr.getID ());
- attributes.add (attr);
- return r;
- }
-
- public Attribute put (String attrID, Object val)
- {
- return put (new BasicAttribute (attrID, val));
- }
-
- public Attribute remove (String attrID)
- {
- for (int i = 0; i < attributes.size (); ++i)
- {
- Attribute at = (Attribute) attributes.get (i);
- if ((ignoreCase && attrID.equalsIgnoreCase (at.getID ()))
- || (! ignoreCase && attrID.equals (at.getID ())))
- {
- attributes.remove (i);
- return at;
- }
- }
-
- return null;
- }
-
- public int size ()
- {
- return attributes.size ();
- }
-
- public String toString ()
- {
- String r = "";
- for (int i = 0; i < attributes.size (); ++i)
- {
- if (i > 0)
- r += "; ";
- r += attributes.get (i).toString ();
- }
- return r;
- }
-
- // This is set by the serialization spec.
- private boolean ignoreCase;
- // Package-private to avoid a trampoline.
- transient Vector attributes;
-
- // Used when enumerating.
- private class BasicAttributesEnumeration implements NamingEnumeration
- {
- int where = 0;
- boolean id;
-
- public BasicAttributesEnumeration (boolean id)
- {
- this.id = id;
- }
-
- public void close () throws NamingException
- {
- }
-
- public boolean hasMore () throws NamingException
- {
- return hasMoreElements ();
- }
-
- public Object next () throws NamingException
- {
- return nextElement ();
- }
-
- public boolean hasMoreElements ()
- {
- return where < attributes.size ();
- }
-
- public Object nextElement () throws NoSuchElementException
- {
- if (where >= attributes.size ())
- throw new NoSuchElementException ("no more elements");
- Attribute at = (Attribute) attributes.get (where);
- ++where;
- return id ? (Object) at.getID () : (Object) at;
- }
- }
-}
OpenPOWER on IntegriCloud