hammant 01/11/11 04:39:38 Modified: apps/db/src/java/org/apache/avalon/db/basic/data BasicIndex.java apps/db/src/java/org/apache/avalon/db/data Index.java apps/db/src/java/org/apache/avalon/db/persistence/inmemory NoPersistence.java apps/db/src/java/org/apache/avalon/db/persistence/store StorePersistence.java apps/db/src/java/org/apache/avalon/db/services DatabasePersistor.java Added: apps/db/src/java/org/apache/avalon/db/data/impl AbstractDelegatedRowHolder.java Log: Index delegates to Table now. Revision Changes Path 1.3 +5 -8 jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/data/BasicIndex.java Index: BasicIndex.java =================================================================== RCS file: /home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/data/BasicIndex.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- BasicIndex.java 2001/11/09 15:03:20 1.2 +++ BasicIndex.java 2001/11/11 12:39:37 1.3 @@ -7,8 +7,8 @@ */ package org.apache.avalon.db.basic.data; -import org.apache.avalon.db.data.impl.AbstractNameable; import org.apache.avalon.db.data.impl.AbstractRowHolder; +import org.apache.avalon.db.data.impl.AbstractDelegatedRowHolder; import org.apache.avalon.db.data.Index; /** @@ -16,15 +16,12 @@ * * * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL PROTECTED]</a> - * @version $Revision: 1.2 $ + * @version $Revision: 1.3 $ */ -public class BasicIndex extends AbstractNameable implements Index { +public class BasicIndex extends AbstractDelegatedRowHolder implements Index { - private AbstractRowHolder mAbstractRowHolder; - - public BasicIndex(String name, AbstractRowHolder abstractRowHolder) { - super(name); - mAbstractRowHolder = abstractRowHolder; + public BasicIndex(String indexName, AbstractRowHolder abstractRowHolder) { + super(indexName, abstractRowHolder); } } 1.3 +2 -2 jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/Index.java Index: Index.java =================================================================== RCS file: /home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/Index.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- Index.java 2001/10/28 20:57:39 1.2 +++ Index.java 2001/11/11 12:39:37 1.3 @@ -15,6 +15,6 @@ * * * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL PROTECTED]</a> - * @version * $Revision: 1.2 $ + * @version * $Revision: 1.3 $ */ -public interface Index extends Nameable {} +public interface Index extends RowHolder {} 1.1 jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractDelegatedRowHolder.java Index: AbstractDelegatedRowHolder.java =================================================================== /* * Copyright (C) The Apache Software Foundation. All rights reserved. * * This software is published under the terms of the Apache Software License * version 1.1, a copy of which has been included with this distribution in * the LICENSE file. */ package org.apache.avalon.db.data.impl; import org.apache.avalon.db.data.RowHolder; import org.apache.avalon.db.data.Column; import org.apache.avalon.db.data.Row; import org.apache.avalon.db.data.RowListener; import java.util.Vector; import java.util.Iterator; import java.lang.ref.WeakReference; /** * Class AbstractDelegatedRowHolder * * * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL PROTECTED]</a> * @version $Revision: 1.1 $ */ public abstract class AbstractDelegatedRowHolder extends AbstractNameable implements RowHolder { private AbstractRowHolder mAbstractRowHolder; /** * Constructor AbstractDelegatedRowHolder * * * @param name * @param columns * */ public AbstractDelegatedRowHolder(String indexName, AbstractRowHolder rowAbstractRowHolder) { super(indexName); mAbstractRowHolder = rowAbstractRowHolder; } /** * Method getColumns * * * @return * */ public Column[] getColumns() { return mAbstractRowHolder.getColumns(); } /** * Method addRow * * * @param row * */ public void addRow(Row row) { mAbstractRowHolder.addRow(row); } public void addRowListener(RowListener rowListener) { mAbstractRowHolder.addRowListener(rowListener); } public void removeRowListener(RowListener rowListener) { mAbstractRowHolder.removeRowListener(rowListener); } } 1.7 +10 -1 jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/persistence/inmemory/NoPersistence.java Index: NoPersistence.java =================================================================== RCS file: /home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/persistence/inmemory/NoPersistence.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- NoPersistence.java 2001/11/10 21:45:03 1.6 +++ NoPersistence.java 2001/11/11 12:39:38 1.7 @@ -15,6 +15,7 @@ import org.apache.avalon.db.data.Table; import org.apache.avalon.db.data.View; import org.apache.avalon.db.data.Index; +import org.apache.avalon.db.data.RowHolder; import org.apache.avalon.framework.logger.AbstractLogEnabled; import org.apache.avalon.framework.context.Contextualizable; import org.apache.avalon.framework.context.Context; @@ -36,7 +37,7 @@ * * * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL PROTECTED]</a> - * @version $Revision: 1.6 $ + * @version $Revision: 1.7 $ */ public class NoPersistence extends AbstractLogEnabled implements DatabasePersistor, Block, Contextualizable, Composable, Configurable, @@ -129,5 +130,13 @@ public void addIndex(String indexName, Index index) { mAddressableObjects.put(indexName, index); + } + + public RowHolder getRowHolder(String rowHolderName) { + return (RowHolder) mAddressableObjects.get(rowHolderName); + } + + public void addRowHolder(String rowHolderName, RowHolder rowHolder) { + mAddressableObjects.put(rowHolderName, rowHolder); } } 1.6 +9 -1 jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/persistence/store/StorePersistence.java Index: StorePersistence.java =================================================================== RCS file: /home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/persistence/store/StorePersistence.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- StorePersistence.java 2001/11/10 21:45:03 1.5 +++ StorePersistence.java 2001/11/11 12:39:38 1.6 @@ -15,6 +15,7 @@ import org.apache.avalon.db.data.Table; import org.apache.avalon.db.data.View; import org.apache.avalon.db.data.Index; +import org.apache.avalon.db.data.RowHolder; import org.apache.avalon.framework.logger.AbstractLogEnabled; import org.apache.avalon.framework.context.Contextualizable; import org.apache.avalon.framework.context.Context; @@ -34,7 +35,7 @@ * * * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL PROTECTED]</a> - * @version $Revision: 1.5 $ + * @version $Revision: 1.6 $ */ public class StorePersistence extends AbstractLogEnabled implements DatabasePersistor, Block, Contextualizable, Composable, Configurable, @@ -121,5 +122,12 @@ public void addTable(String tableName, Table table) {} public void addView(String viewName, View view) {} public void addIndex(String indexName, Index index) {} + + public RowHolder getRowHolder(String rowHolderName) { + return null; + } + + public void addRowHolder(String rowHolderName, RowHolder rowHolder) {} + } 1.5 +5 -1 jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/services/DatabasePersistor.java Index: DatabasePersistor.java =================================================================== RCS file: /home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/services/DatabasePersistor.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- DatabasePersistor.java 2001/11/09 15:03:20 1.4 +++ DatabasePersistor.java 2001/11/11 12:39:38 1.5 @@ -13,6 +13,7 @@ import org.apache.avalon.db.data.Table; import org.apache.avalon.db.data.View; import org.apache.avalon.db.data.Index; +import org.apache.avalon.db.data.RowHolder; /** @@ -20,7 +21,7 @@ * * * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL PROTECTED]</a> - * @version * $Revision: 1.4 $ + * @version * $Revision: 1.5 $ */ public interface DatabasePersistor { @@ -34,6 +35,7 @@ * */ Table getTable(String tableName); + RowHolder getRowHolder(String rowHolderName); /** * Method tableExists @@ -59,5 +61,7 @@ void addView(String viewName, View table); void addIndex(String indexName, Index index); + + void addRowHolder(String rowHolderName, RowHolder rowHolder); }
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>