org.bson.types
Class BasicBSONList

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractList<E>
          extended by java.util.ArrayList<Object>
              extended by org.bson.types.BasicBSONList
All Implemented Interfaces:
Serializable, Cloneable, Iterable<Object>, Collection<Object>, List<Object>, RandomAccess, BSONObject
Direct Known Subclasses:
BasicDBList

public class BasicBSONList
extends ArrayList<Object>
implements BSONObject

Utility class to allow array DBObjects to be created.

Note: MongoDB will also create arrays from java.util.Lists.

 DBObject obj = new BasicBSONList();
 obj.put( "0", value1 );
 obj.put( "4", value2 );
 obj.put( 2, value3 );
 
This simulates the array [ value1, null, value3, null, value2 ] by creating the DBObject { "0" : value1, "1" : null, "2" : value3, "3" : null, "4" : value2 }.

BasicBSONList only supports numeric keys. Passing strings that cannot be converted to ints will cause an IllegalArgumentException.

 BasicBSONList list = new BasicBSONList();
 list.put("1", "bar"); // ok
 list.put("1E1", "bar"); // throws exception
 

See Also:
Serialized Form

Field Summary
 
Fields inherited from class java.util.AbstractList
modCount
 
Constructor Summary
BasicBSONList()
           
 
Method Summary
 boolean containsField(String key)
          Checks if this object contains a field with the given name.
 boolean containsKey(String key)
          Deprecated.  
 Object get(String key)
          Gets a value at an index.
 Set<String> keySet()
          Returns this object's fields' names
 Object put(int key, Object v)
          Puts a value at an index.
 Object put(String key, Object v)
          Puts a value at an index.
 void putAll(BSONObject o)
          Sets all key/value pairs from an object into this object
 void putAll(Map m)
          Sets all key/value pairs from a map into this object
 Object removeField(String key)
          Removes a field with a given name from this object.
 Map toMap()
          Returns a map representing this BSONObject.
 
Methods inherited from class java.util.ArrayList
add, add, addAll, addAll, clear, clone, contains, ensureCapacity, get, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeRange, retainAll, set, size, subList, toArray, toArray, trimToSize
 
Methods inherited from class java.util.AbstractList
equals, hashCode
 
Methods inherited from class java.util.AbstractCollection
containsAll, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
containsAll, equals, hashCode
 

Constructor Detail

BasicBSONList

public BasicBSONList()
Method Detail

put

public Object put(String key,
                  Object v)
Puts a value at an index. For interface compatibility. Must be passed a String that is parsable to an int.

Specified by:
put in interface BSONObject
Parameters:
key - the index at which to insert the value
v - the value to insert
Returns:
the value
Throws:
IllegalArgumentException - if key cannot be parsed into an int

put

public Object put(int key,
                  Object v)
Puts a value at an index. This will fill any unset indexes less than index with null.

Parameters:
key - the index at which to insert the value
v - the value to insert
Returns:
the value

putAll

public void putAll(Map m)
Description copied from interface: BSONObject
Sets all key/value pairs from a map into this object

Specified by:
putAll in interface BSONObject
Parameters:
m - the map

putAll

public void putAll(BSONObject o)
Description copied from interface: BSONObject
Sets all key/value pairs from an object into this object

Specified by:
putAll in interface BSONObject
Parameters:
o - the object

get

public Object get(String key)
Gets a value at an index. For interface compatibility. Must be passed a String that is parsable to an int.

Specified by:
get in interface BSONObject
Parameters:
key - the index
Returns:
the value, if found, or null
Throws:
IllegalArgumentException - if key cannot be parsed into an int

removeField

public Object removeField(String key)
Description copied from interface: BSONObject
Removes a field with a given name from this object.

Specified by:
removeField in interface BSONObject
Parameters:
key - The name of the field to remove
Returns:
The value removed from this object

containsKey

@Deprecated
public boolean containsKey(String key)
Deprecated. 

Description copied from interface: BSONObject
Deprecated

Specified by:
containsKey in interface BSONObject
Returns:

containsField

public boolean containsField(String key)
Description copied from interface: BSONObject
Checks if this object contains a field with the given name.

Specified by:
containsField in interface BSONObject
Parameters:
key - Field name for which to check
Returns:

keySet

public Set<String> keySet()
Description copied from interface: BSONObject
Returns this object's fields' names

Specified by:
keySet in interface BSONObject
Returns:
The names of the fields in this object

toMap

public Map toMap()
Description copied from interface: BSONObject
Returns a map representing this BSONObject.

Specified by:
toMap in interface BSONObject
Returns:
the map