/** * Scans a list of <code>PersistentObject</code>s and return the object that matches the key or * <code>null</code> if not found. * * @param list list of <code>PersistentObject</code>s to scan. * @param encodedKey key to locate correct record on the list. * @return key-matching record of <code>null</code> if not found. */ public static PersistentObject getPoInList(List list, String encodedKey) { Iterator iter = list.iterator(); while (iter.hasNext()) { PersistentObject p = (PersistentObject) iter.next(); if (p.getEncodedKey().equals(encodedKey)) { return p; } } return null; }
/** * Updates a <code>List</code> of objects obtained through a call to <code>findAllByList()</code>. * Each modified row in the list will be updated. * * @param list list of <code>PersistentObject</code>s. * @exception ObjectHasChangedException Description of the Exception * @exception MissingAttributeException Description of the Exception * @throws ObjectHasChangeException when another user has already updated the record (i.e. an * optimistic lock error. * @throws MissingAtributeException if the column specification for some fields are marked as * required and these fields are <code>null</code> in the <code>PersistentObject</code> * parameter. * @throws DuplicateRowException if an insert operation fails or would fail because of key * duplication. * @throws InvalidValueException if a value in a column is invalid (e.g. out of range). * @see #findByKey(Object) * @see #getAllAsList() */ public void update(List list) throws ObjectHasChangedException, MissingAttributeException, DuplicateRowException, InvalidValueException { update(list.iterator()); }