vgritsenko    2004/02/22 19:22:51

  Modified:    java/src/org/apache/xindice/core/indexer IndexManager.java
  Log:
  fix drop index (broken by commit 2 days ago)
  
  Revision  Changes    Path
  1.31      +13 -5     
xml-xindice/java/src/org/apache/xindice/core/indexer/IndexManager.java
  
  Index: IndexManager.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xindice/java/src/org/apache/xindice/core/indexer/IndexManager.java,v
  retrieving revision 1.30
  retrieving revision 1.31
  diff -u -r1.30 -r1.31
  --- IndexManager.java 21 Feb 2004 13:48:23 -0000      1.30
  +++ IndexManager.java 23 Feb 2004 03:22:51 -0000      1.31
  @@ -136,6 +136,10 @@
        * @return Whether or not the Indexer was dropped
        */
       public synchronized boolean drop(final String name) {
  +        // Get indexer
  +        Indexer idx = get(name);
  +
  +        // Unregister and remove from coniguration
           unregister(name);
           config.processChildren(INDEX, new ConfigurationCallback() {
               public void process(Configuration cfg) {
  @@ -151,7 +155,7 @@
               }
           });
   
  -        Indexer idx = get(name);
  +        // Drop indexer
           boolean res = false;
           try {
               res = idx.drop();
  @@ -167,8 +171,12 @@
        * Drop all indexers
        */
       public synchronized void drop() {
  -        for (int i = 0; i < idxList.length; i++) {
  -            drop(idxList[i].name);
  +        // Get a copy of idxList
  +        IndexerInfo[] idx = idxList;
  +
  +        // Drop indexes
  +        for (int i = 0; i < idx.length; i++) {
  +            drop(idx[i].name);
           }
       }
   
  
  
  

Reply via email to