Repository: incubator-rya
Updated Branches:
  refs/heads/develop 4ca2b241f -> db96c4584


RYA-28 adding additional life cycle dependencies for secondary indices


Project: http://git-wip-us.apache.org/repos/asf/incubator-rya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-rya/commit/db96c458
Tree: http://git-wip-us.apache.org/repos/asf/incubator-rya/tree/db96c458
Diff: http://git-wip-us.apache.org/repos/asf/incubator-rya/diff/db96c458

Branch: refs/heads/develop
Commit: db96c4584815fec6b67f31db2753d12c1bb23f64
Parents: 4ca2b24
Author: pujav65 <[email protected]>
Authored: Mon Jan 4 16:31:24 2016 -0500
Committer: pujav65 <[email protected]>
Committed: Mon Jan 4 16:31:24 2016 -0500

----------------------------------------------------------------------
 .../java/mvm/rya/accumulo/AccumuloRyaDAO.java   | 25 +++++++++++++++++++-
 .../accumulo/experimental/AccumuloIndexer.java  | 13 ++++++----
 2 files changed, 33 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/db96c458/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/AccumuloRyaDAO.java
----------------------------------------------------------------------
diff --git 
a/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/AccumuloRyaDAO.java 
b/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/AccumuloRyaDAO.java
index 8a6bd00..e251fd3 100644
--- a/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/AccumuloRyaDAO.java
+++ b/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/AccumuloRyaDAO.java
@@ -152,7 +152,9 @@ public class AccumuloRyaDAO implements 
RyaDAO<AccumuloRdfConfiguration>, RyaName
             bw_ns = mt_bw.getBatchWriter(tableLayoutStrategy.getNs());
             
             for (AccumuloIndexer index : secondaryIndexers) {
-                index.setMultiTableBatchWriter(mt_bw);
+               index.setConnector(connector);
+               index.setMultiTableBatchWriter(mt_bw);
+               index.init();
             }
 
             queryEngine = new AccumuloRyaQueryEngine(connector, conf);
@@ -314,6 +316,13 @@ public class AccumuloRyaDAO implements 
RyaDAO<AccumuloRdfConfiguration>, RyaName
         } catch (Exception e) {
             throw new RyaDAOException(e);
         }
+        for(AccumuloIndexer indexer : this.secondaryIndexers) {
+            try {
+                indexer.destroy();
+            } catch(Exception e) {
+                logger.warn("Failed to destroy indexer", e);
+            }
+        }
     }
 
     @Override
@@ -390,6 +399,13 @@ public class AccumuloRyaDAO implements 
RyaDAO<AccumuloRdfConfiguration>, RyaName
                 logger.error(e.getMessage());
             }
         }
+        for(AccumuloIndexer indexer : this.secondaryIndexers) {
+            try {
+                indexer.purge(configuration);
+            } catch(Exception e) {
+                logger.error("Failed to purge indexer", e);
+            }
+        }
     }
 
     @Override
@@ -408,6 +424,13 @@ public class AccumuloRyaDAO implements 
RyaDAO<AccumuloRdfConfiguration>, RyaName
             }
         }
         destroy();
+        for(AccumuloIndexer indexer : this.secondaryIndexers) {
+            try {
+                indexer.dropAndDestroy();
+            } catch(Exception e) {
+                logger.error("Failed to drop and destroy indexer", e);
+            }
+        }
     }
 
     public Connector getConnector() {

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/db96c458/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/experimental/AccumuloIndexer.java
----------------------------------------------------------------------
diff --git 
a/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/experimental/AccumuloIndexer.java
 
b/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/experimental/AccumuloIndexer.java
index 2329831..5581e08 100644
--- 
a/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/experimental/AccumuloIndexer.java
+++ 
b/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/experimental/AccumuloIndexer.java
@@ -22,12 +22,17 @@ package mvm.rya.accumulo.experimental;
 
 import java.io.IOException;
 
-import mvm.rya.api.persist.index.RyaSecondaryIndexer;
-
+import org.apache.accumulo.core.client.Connector;
 import org.apache.accumulo.core.client.MultiTableBatchWriter;
 
+import mvm.rya.api.RdfCloudTripleStoreConfiguration;
+import mvm.rya.api.persist.index.RyaSecondaryIndexer;
+
 public interface AccumuloIndexer extends RyaSecondaryIndexer {
-    
+    public void init();    
     public void setMultiTableBatchWriter(MultiTableBatchWriter writer) throws 
IOException;
-
+    public void setConnector(Connector connector);
+    public void destroy();
+    public void purge(RdfCloudTripleStoreConfiguration configuration);
+    public void dropAndDestroy();
 }

Reply via email to