X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=libjava%2Fjavax%2Fnaming%2Fdirectory%2FBasicAttribute.java;fp=libjava%2Fjavax%2Fnaming%2Fdirectory%2FBasicAttribute.java;h=0000000000000000000000000000000000000000;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=8ccb67abc4059fa2a68962e0fc26608c5692e366;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/libjava/javax/naming/directory/BasicAttribute.java b/libjava/javax/naming/directory/BasicAttribute.java deleted file mode 100644 index 8ccb67ab..00000000 --- a/libjava/javax/naming/directory/BasicAttribute.java +++ /dev/null @@ -1,298 +0,0 @@ -/* Copyright (C) 2000, 2001 Free Software Foundation - - This file is part of libgcj. - -This software is copyrighted work licensed under the terms of the -Libgcj License. Please consult the file "LIBGCJ_LICENSE" for -details. */ - -package javax.naming.directory; - -import javax.naming.*; -import java.util.*; - -/** - * @author Tom Tromey - * @date June 20, 2001 - */ -public class BasicAttribute implements Attribute -{ - /** The ID of this attribute. */ - protected String attrID; - /** True if this attribute's values are ordered. */ - protected boolean ordered; - /** Values for this attribute. */ - protected transient Vector values; - - // Used by cloning. - private BasicAttribute () - { - } - - public BasicAttribute (String id) - { - this (id, false); - } - - public BasicAttribute (String id, boolean ordered) - { - attrID = id; - this.ordered = ordered; - values = new Vector (); - } - - public BasicAttribute (String id, Object value) - { - this (id, value, false); - } - - public BasicAttribute (String id, Object value, boolean ordered) - { - attrID = id; - this.ordered = ordered; - values = new Vector (); - values.add (value); - } - - public void add (int index, Object val) - { - if (! ordered && contains (val)) - throw new IllegalStateException ("value already in attribute"); - values.add (index, val); - } - - public boolean add (Object val) - { - if (! ordered && contains (val)) - throw new IllegalStateException ("value already in attribute"); - return values.add (val); - } - - public void clear () - { - values.clear (); - } - - public Object clone () - { - BasicAttribute c = new BasicAttribute (); - c.attrID = attrID; - c.ordered = ordered; - c.values = (Vector) values.clone (); - return c; - } - - public boolean contains (Object val) - { - for (int i = 0; i < values.size (); ++i) - { - if (equals (val, values.get (i))) - return true; - } - - return false; - } - - public boolean equals (Object obj) - { - if (! (obj instanceof BasicAttribute)) - return false; - BasicAttribute b = (BasicAttribute) obj; - - if (ordered != b.ordered - || ! attrID.equals (b.attrID) - || values.size () != b.values.size ()) - return false; - - for (int i = 0; i < values.size (); ++i) - { - boolean ok = false; - if (ordered) - ok = equals (values.get (i), b.values.get (i)); - else - { - for (int j = 0; j < b.values.size (); ++j) - { - if (equals (values.get (i), b.values.get (j))) - { - ok = true; - break; - } - } - } - - if (! ok) - return false; - } - - return true; - } - - public Object get () - { - if (values.size () == 0) - throw new NoSuchElementException ("no values"); - return get (0); - } - - public Object get (int index) - { - return values.get (index); - } - - public NamingEnumeration getAll () - { - return new BasicAttributeEnumeration (); - } - - public DirContext getAttributeDefinition () - throws OperationNotSupportedException, NamingException - { - throw new OperationNotSupportedException (); - } - - public DirContext getAttributeSyntaxDefinition () - throws OperationNotSupportedException, NamingException - { - throw new OperationNotSupportedException (); - } - - public String getID () - { - return attrID; - } - - public int hashCode () - { - int val = attrID.hashCode (); - for (int i = 0; i < values.size (); ++i) - { - Object o = values.get (i); - if (o == null) - { - // Nothing. - } - else if (o instanceof Object[]) - { - Object[] a = (Object[]) o; - for (int j = 0; j < a.length; ++j) - val += a[j].hashCode (); - } - else - val += o.hashCode (); - } - - return val; - } - - public boolean isOrdered () - { - return ordered; - } - - public Object remove (int index) - { - return values.remove (index); - } - - public boolean remove (Object val) - { - for (int i = 0; i < values.size (); ++i) - { - if (equals (val, values.get (i))) - { - values.remove (i); - return true; - } - } - - return false; - } - - public Object set (int index, Object val) - { - if (! ordered && contains (val)) - throw new IllegalStateException ("value already in attribute"); - return values.set (index, val); - } - - public int size () - { - return values.size (); - } - - public String toString () - { - String r = attrID; - for (int i = 0; i < values.size (); ++i) - r += ";" + values.get (i).toString (); - return r; - } - - // This is used for testing equality of two Objects according to our - // local rules. - private boolean equals (Object one, Object two) - { - if (one == null) - return two == null; - - if (one instanceof Object[]) - { - if (! (two instanceof Object[])) - return false; - - Object[] aone = (Object[]) one; - Object[] atwo = (Object[]) two; - - if (aone.length != atwo.length) - return false; - - for (int i = 0; i < aone.length; ++i) - { - if (! aone[i].equals (atwo[i])) - return false; - } - - return true; - } - - return one.equals (two); - } - - // Used when enumerating this attribute. - private class BasicAttributeEnumeration implements NamingEnumeration - { - int where = -1; - - public BasicAttributeEnumeration () - { - } - - public void close () throws NamingException - { - } - - public boolean hasMore () throws NamingException - { - return hasMoreElements (); - } - - public Object next () throws NamingException - { - return nextElement (); - } - - public boolean hasMoreElements () - { - return where < values.size (); - } - - public Object nextElement () throws NoSuchElementException - { - if (where + 1 >= values.size ()) - throw new NoSuchElementException ("no more elements"); - ++where; - return values.get (where); - } - } -}