hammant     01/11/12 14:14:29

  Modified:    apps/db/src/java/org/apache/avalon/db/basic/data
                        BasicRow.java
               apps/db/src/java/org/apache/avalon/db/bcel/data
                        BCELTable.java
               apps/db/src/java/org/apache/avalon/db/data/impl
                        AbstractQueryable.java AbstractTable.java
                        AbstractTableRow.java
               apps/db/src/java/org/apache/avalon/db/results RowSet.java
  Log:
  Notifications on Table Events.
  
  Revision  Changes    Path
  1.7       +2 -0      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/data/BasicRow.java
  
  Index: BasicRow.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/data/BasicRow.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- BasicRow.java     2001/11/12 20:03:22     1.6
  +++ BasicRow.java     2001/11/12 22:14:29     1.7
  @@ -9,6 +9,7 @@
   
   import org.apache.avalon.db.data.impl.AbstractTableRow;
   import org.apache.avalon.db.data.Column;
  +import org.apache.avalon.db.data.Row;
   
   import java.util.Vector;
   import java.io.Serializable;
  @@ -32,6 +33,7 @@
                   mRow.setElementAt(value,x);
               }
           }
  +        mAbstractQueryable.notifyRowListenersChanged(new Row[] { this });
       }
   
       public Object getValue(String columnName) {
  
  
  
  1.5       +1 -0      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/bcel/data/BCELTable.java
  
  Index: BCELTable.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/bcel/data/BCELTable.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- BCELTable.java    2001/11/06 00:32:34     1.4
  +++ BCELTable.java    2001/11/12 22:14:29     1.5
  @@ -9,6 +9,7 @@
   
   import org.apache.avalon.db.data.impl.AbstractTable;
   import org.apache.avalon.db.data.Column;
  +import org.apache.avalon.db.data.Row;
   
   public class BCELTable extends AbstractTable {
   
  
  
  
  1.4       +14 -5     
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractQueryable.java
  
  Index: AbstractQueryable.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractQueryable.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- AbstractQueryable.java    2001/11/12 21:46:24     1.3
  +++ AbstractQueryable.java    2001/11/12 22:14:29     1.4
  @@ -17,6 +17,7 @@
   
   import java.util.Vector;
   import java.util.Iterator;
  +import java.util.Collection;
   import java.lang.ref.WeakReference;
   
   
  @@ -25,7 +26,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.3 $
  + * @version $Revision: 1.4 $
    */
   public abstract class AbstractQueryable extends AbstractNameable implements 
Queryable {
   
  @@ -55,7 +56,12 @@
           mCatalogName = catalogName;
       }
   
  +    public Collection getRows() {
  +        return mRows;
  +    }
  +
   
  +
       /**
        * Method getColumns
        *
  @@ -75,7 +81,10 @@
        *
        */
       public void addRow(Row row) {
  -        mRows.add(row);
  +        AbstractTableRow atr = (AbstractTableRow) row;
  +        mRows.add(atr);
  +        atr.setAbstractQueryable(this);
  +
       }
   
       public void addRowListener(RowListener rowListener) {
  @@ -93,7 +102,7 @@
           }
       }
   
  -    protected void notifyRowListenersAdded(Row[] rows) {
  +    public void notifyRowListenersAdded(Row[] rows) {
           Iterator it = mListeners.iterator();
           while (it.hasNext()) {
               WeakReference ref = (WeakReference) it.next();
  @@ -106,7 +115,7 @@
           }
       }
   
  -    protected void notifyRowListenersChanged(Row[] rows) {
  +    public void notifyRowListenersChanged(Row[] rows) {
           Iterator it = mListeners.iterator();
           while (it.hasNext()) {
               WeakReference ref = (WeakReference) it.next();
  @@ -119,7 +128,7 @@
           }
       }
   
  -    protected void notifyRowListenersDeleted(Row[] rows) {
  +    public void notifyRowListenersDeleted(Row[] rows) {
           Iterator it = mListeners.iterator();
           while (it.hasNext()) {
               WeakReference ref = (WeakReference) it.next();
  
  
  
  1.7       +1 -16     
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractTable.java
  
  Index: AbstractTable.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractTable.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- AbstractTable.java        2001/11/12 21:46:24     1.6
  +++ AbstractTable.java        2001/11/12 22:14:29     1.7
  @@ -25,13 +25,11 @@
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.6 $
  + * @version $Revision: 1.7 $
    */
   public abstract class AbstractTable extends AbstractQueryable implements 
Table {
   
   
  -    private Vector rows = new Vector();
  -
       /**
        * Constructor AbstractTable
        *
  @@ -44,18 +42,5 @@
           super(name, columns);
       }
   
  -    public void addRow(AbstractTableRow atr) {
  -        rows.add(atr);
  -        notifyRowListenersAdded(new Row[] {atr});
  -    }
  -
  -    public void removeRow(AbstractTableRow atr) {
  -        rows.remove(atr);
  -        notifyRowListenersDeleted(new Row[] {atr});
  -    }
  -
  -    public Collection getRows() {
  -        return Collections.unmodifiableCollection(rows);
  -    }
   
   }
  
  
  
  1.3       +7 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractTableRow.java
  
  Index: AbstractTableRow.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractTableRow.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AbstractTableRow.java     2001/10/30 17:45:14     1.2
  +++ AbstractTableRow.java     2001/11/12 22:14:29     1.3
  @@ -19,9 +19,15 @@
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public abstract class AbstractTableRow implements Row {
  +
  +    protected AbstractQueryable mAbstractQueryable;
  +
  +    public void setAbstractQueryable(AbstractQueryable absQueryable) {
  +        mAbstractQueryable = absQueryable;
  +    }
   
       /**
        * Method testLength
  
  
  
  1.5       +1 -3      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/results/RowSet.java
  
  Index: RowSet.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/results/RowSet.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- RowSet.java       2001/11/11 14:47:34     1.4
  +++ RowSet.java       2001/11/12 22:14:29     1.5
  @@ -8,15 +8,13 @@
    */
   package org.apache.avalon.db.results;
   
  -import org.apache.avalon.db.data.Row;
   
  -
   /**
    * Interface RowSet
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version * $Revision: 1.4 $
  + * @version * $Revision: 1.5 $
    */
   public interface RowSet extends Result {
       Columns getColumns();
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to