Class BasicBSONList

All Implemented Interfaces:
Serializable, Cloneable, Iterable<Object>, Collection<Object>, List<Object>, RandomAccess, BSONObject

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.

 BSONObject 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:
  • Constructor Details

    • BasicBSONList

      public BasicBSONList()
  • Method Details

    • 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 value)
      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
      value - 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
    • 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:
      True if the field is present
    • 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