FileDocCategorySizeDatePackage
Properties.javaAPI DocJ2ME MIDP 2.05213Thu Nov 07 12:02:20 GMT 2002com.sun.midp.io

Properties

public class Properties extends Object
The Properties class represents a persistent set of properties. Each key and its corresponding value in the property list is a string.

Fields Summary
private static int
INITIAL_SIZE
An appropriate initial size for storage vectors (10).
private Vector
keys
A vector of property keys.
private Vector
vals
A vector of property values.
Constructors Summary
public Properties()
Constructor - creates an empty property list.

    
                
      
	keys = new Vector(INITIAL_SIZE);
	vals = new Vector(INITIAL_SIZE);
    
Methods Summary
public synchronized voidaddProperty(java.lang.String key, java.lang.String value)
Store multiple key:value pair. Provided for parallelism with the getProperty method. Enforces use of strings for property keys and values.

param
key the key to be placed into this property list.
param
value the value corresponding to key.
see
#getProperty

	keys.addElement(key);
        vals.addElement(value);

        return;
    
public java.lang.StringgetKeyAt(int index)
Gets a property key by index. Used by the JadWriter as part of the JAD Tool.

param
index 0 based index of a property
return
the key of the property with the specified index.
exception
ArrayIndexOutOfBoundsException if an invalid index was given.

        return (String)keys.elementAt(index);
    
public java.lang.StringgetProperty(java.lang.String key)
Searches for the property with the specified key in this property list. The method returns null if the property is not found.

param
key the property key.
return
the value in this property list with the specified key value.
exception
NullPointerException is thrown if key is null.
see
#setProperty
see
#removeProperty

	if (key == null) {
	    throw new NullPointerException();
	}

	int idx = keys.indexOf(key);
	String rv = null;
	if (idx > -1) {
	    rv = (String)vals.elementAt(idx);
	}
	return rv;
    
public java.lang.StringgetValueAt(int index)
Gets a property value by index. Used by the JadWriter as part of the JAD Tool.

param
index 0 based index of a property
return
the value of the property with the specified index.
exception
ArrayIndexOutOfBoundsException if an invalid index was given.

        return (String)vals.elementAt(index);
    
public synchronized java.lang.StringremoveProperty(java.lang.String key)
Removes a property (key:value pair) from the property list based on the key string.

param
key the key to be removed from the property list.
return
the element associated with the key.
see
#setProperty
see
#getProperty

	int idx = keys.indexOf(key);
	String rv = null;
	if (idx > -1) {
	    rv = (String)vals.elementAt(idx);
	    keys.removeElementAt(idx);
	    vals.removeElementAt(idx);
	}
	return rv;
    
public synchronized java.lang.StringsetProperty(java.lang.String key, java.lang.String value)
Store a single key:value pair. Provided for parallelism with the getProperty method. Enforces use of strings for property keys and values. If a key already exists in storage, the value corresponing to that key will be replaced and returned.

param
key the key to be placed into this property list.
param
value the value corresponding to key.
return
if the new property value replaces an existing one, the old value is returned. otherwise, null is returned.
see
#getProperty
see
#removeProperty

	
	int idx = keys.indexOf(key);

	String rv = null;
	if (idx == -1) {    // If I don't have this, add it and return null
	    keys.addElement(key);
	    vals.addElement(value);    
	} else {	    // Else replace it and return the old one.
	    rv = (String)vals.elementAt(idx);
	    vals.setElementAt(value, idx);
	}
        return rv;
    
public synchronized java.lang.StringsetPropertyAt(int index, java.lang.String value)
Replace the value of the property at the given index.

param
index 0 based index of a property
param
value the new value for the property at index.
return
previous value
exception
IndexOutOfBoundsException if the index is out of bounds

        String rv = (String)vals.elementAt(index);

        vals.setElementAt(value, index);

        return rv;
    
public intsize()
Gets the number of properties.

return
number of properties

        return keys.size();