You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gora.apache.org by le...@apache.org on 2013/02/09 22:12:20 UTC

svn commit: r1444435 - in /gora/trunk: CHANGES.txt gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMapping.java gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMappingManager.java

Author: lewismc
Date: Sat Feb  9 21:12:19 2013
New Revision: 1444435

URL: http://svn.apache.org/r1444435
Log:
GORA-169 Implement correct logging for KeySpaces and attributes in CassandraMappingManager

Modified:
    gora/trunk/CHANGES.txt
    gora/trunk/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMapping.java
    gora/trunk/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMappingManager.java

Modified: gora/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/gora/trunk/CHANGES.txt?rev=1444435&r1=1444434&r2=1444435&view=diff
==============================================================================
--- gora/trunk/CHANGES.txt (original)
+++ gora/trunk/CHANGES.txt Sat Feb  9 21:12:19 2013
@@ -6,6 +6,8 @@ Gora Change Log
 
 trunk (current development)
 
+* GORA-169 Implement correct logging for KeySpaces and attributes in CassandraMappingManager (lewismc)
+
 * GORA-27 Optionally add license headers to generated files (lewismc + rmarroquin)
 
 * GORA-181 Replace tab characters with correct Gora coding style (rmarroquin)

Modified: gora/trunk/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMapping.java
URL: http://svn.apache.org/viewvc/gora/trunk/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMapping.java?rev=1444435&r1=1444434&r2=1444435&view=diff
==============================================================================
--- gora/trunk/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMapping.java (original)
+++ gora/trunk/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMapping.java Sat Feb  9 21:12:19 2013
@@ -18,7 +18,6 @@
 
 package org.apache.gora.cassandra.store;
 
-import java.io.IOException;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -30,10 +29,7 @@ import me.prettyprint.hector.api.ddl.Col
 import me.prettyprint.hector.api.ddl.ColumnType;
 import me.prettyprint.hector.api.ddl.ComparatorType;
 
-import org.jdom.Document;
 import org.jdom.Element;
-import org.jdom.JDOMException;
-import org.jdom.input.SAXBuilder;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -41,10 +37,7 @@ public class CassandraMapping {
   
   public static final Logger LOG = LoggerFactory.getLogger(CassandraMapping.class);
   
-  private static final String MAPPING_FILE = "gora-cassandra-mapping.xml";
-  private static final String KEYSPACE_ELEMENT = "keyspace";
   private static final String NAME_ATTRIBUTE = "name";
-  private static final String MAPPING_ELEMENT = "class";
   private static final String COLUMN_ATTRIBUTE = "qualifier";
   private static final String FAMILY_ATTRIBUTE = "family";
   private static final String SUPER_ATTRIBUTE = "type";
@@ -108,30 +101,31 @@ public class CassandraMapping {
   /**
    * Primary class for loading Cassandra configuration from the 'MAPPING_FILE'.
    */
+  @SuppressWarnings("unchecked")
   public CassandraMapping(Element keyspace, Element mapping) {
     if (keyspace == null) {
     	LOG.error("Keyspace element should not be null!");
         return;
     } else {
-    	// LOG.info("Located Cassandra Keyspace: '" + KEYSPACE_ELEMENT + "'");
+      LOG.debug("Located Cassandra Keyspace");
     }
     this.keyspaceName = keyspace.getAttributeValue(NAME_ATTRIBUTE);
     if (this.keyspaceName == null) {
     	LOG.error("Error locating Cassandra Keyspace name attribute!");
     } else {
-    	// LOG.info("Located Cassandra Keyspace name: '" + NAME_ATTRIBUTE + "' -> " + keyspaceName);
+      LOG.debug("Located Cassandra Keyspace name: '" + keyspaceName + "'");
     }
     this.clusterName = keyspace.getAttributeValue(CLUSTER_ATTRIBUTE);
     if (this.clusterName == null) {
     	LOG.error("Error locating Cassandra Keyspace cluster attribute!");
     } else {
-    	// LOG.info("Located Cassandra Keyspace cluster: '" + CLUSTER_ATTRIBUTE + "' -> " + clusterName);
+      LOG.debug("Located Cassandra Keyspace cluster: '" + clusterName + "'");
     }
     this.hostName = keyspace.getAttributeValue(HOST_ATTRIBUTE);
     if (this.hostName == null) {
     	LOG.error("Error locating Cassandra Keyspace host attribute!");
     } else {
-    	// LOG.info("Located Cassandra Keyspace host: '" + HOST_ATTRIBUTE + "' -> " + hostName);
+      LOG.debug("Located Cassandra Keyspace host: '" + hostName + "'");
     }
     
     // load column family definitions
@@ -144,13 +138,13 @@ public class CassandraMapping {
       	LOG.error("Error locating column family name attribute!");
       	continue;
       } else {
-      	// LOG.info("Located column family name: '" + NAME_ATTRIBUTE + "' -> " + familyName);
+        LOG.debug("Located column family: '" + familyName + "'" );
       }
       String superAttribute = element.getAttributeValue(SUPER_ATTRIBUTE);
       if (superAttribute != null) {
-    	// LOG.info("Located super column family");
+      LOG.debug("Located super column family");
         this.superFamilies.add(familyName);
-        // LOG.info("Added super column family: '" + familyName + "'");
+        LOG.debug("Added super column family: '" + familyName + "'");
         cfDef.setColumnType(ColumnType.SUPER);
         cfDef.setSubComparatorType(ComparatorType.BYTESTYPE);
       }

Modified: gora/trunk/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMappingManager.java
URL: http://svn.apache.org/viewvc/gora/trunk/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMappingManager.java?rev=1444435&r1=1444434&r2=1444435&view=diff
==============================================================================
--- gora/trunk/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMappingManager.java (original)
+++ gora/trunk/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMappingManager.java Sat Feb  9 21:12:19 2013
@@ -19,17 +19,10 @@
 package org.apache.gora.cassandra.store;
 
 import java.io.IOException;
-import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import me.prettyprint.cassandra.model.BasicColumnFamilyDefinition;
-import me.prettyprint.cassandra.service.ThriftCfDef;
-import me.prettyprint.hector.api.ddl.ColumnFamilyDefinition;
-import me.prettyprint.hector.api.ddl.ColumnType;
-import me.prettyprint.hector.api.ddl.ComparatorType;
-
 import org.jdom.Document;
 import org.jdom.Element;
 import org.jdom.JDOMException;
@@ -45,12 +38,9 @@ public class CassandraMappingManager {
   private static final String KEYSPACE_ELEMENT = "keyspace";
   private static final String NAME_ATTRIBUTE = "name";
   private static final String MAPPING_ELEMENT = "class";
-  private static final String COLUMN_ATTRIBUTE = "qualifier";
-  private static final String FAMILY_ATTRIBUTE = "family";
-  private static final String SUPER_ATTRIBUTE = "type";
-  private static final String CLUSTER_ATTRIBUTE = "cluster";
+  private static final String KEYCLASS_ATTRIBUTE = "keyClass";
   private static final String HOST_ATTRIBUTE = "host";
-
+  private static final String CLUSTER_ATTRIBUTE = "cluster";
   // singleton
   private static CassandraMappingManager manager = new CassandraMappingManager();
 
@@ -76,7 +66,7 @@ public class CassandraMappingManager {
     }
   }
 
-  public CassandraMapping get(Class persistentClass) {
+  public CassandraMapping get(Class<?> persistentClass) {
     String className = persistentClass.getName();
     Element mappingElement = mappingMap.get(className);
     if (mappingElement == null) {
@@ -84,7 +74,7 @@ public class CassandraMappingManager {
       return null;
     }
     String keyspaceName = mappingElement.getAttributeValue(KEYSPACE_ELEMENT);
-    // LOG.info("className=" + className + " -> keyspaceName=" + keyspaceName);
+      LOG.debug("className=" + className + " -> keyspaceName=" + keyspaceName);
     Element keyspaceElement = keyspaceMap.get(keyspaceName);
     if (keyspaceElement == null) {
       LOG.error("Keyspace element does not exist for keyspaceName=" + keyspaceName);
@@ -102,26 +92,28 @@ public class CassandraMappingManager {
   @SuppressWarnings("unchecked")
   public void loadConfiguration() throws JDOMException, IOException {
     SAXBuilder saxBuilder = new SAXBuilder();
+    // get mapping file
     Document document = saxBuilder.build(getClass().getClassLoader().getResourceAsStream(MAPPING_FILE));
     if (document == null) {
       LOG.warn("Mapping file '" + MAPPING_FILE + "' could not be found!");
     }
     Element root = document.getRootElement();
-    
+    // find cassandra keyspace element
     List<Element> keyspaces = root.getChildren(KEYSPACE_ELEMENT);
     if (keyspaces == null || keyspaces.size() == 0) {
       LOG.error("Error locating Cassandra Keyspace element!");
     }
     else {
-      // LOG.info("Located Cassandra Keyspace: '" + KEYSPACE_ELEMENT + "'");
       for (Element keyspace : keyspaces) {
+        // log name, cluster and host for given keyspace(s)
         String keyspaceName = keyspace.getAttributeValue(NAME_ATTRIBUTE);
+        String clusterName = keyspace.getAttributeValue(CLUSTER_ATTRIBUTE);
+        String hostName = keyspace.getAttributeValue(HOST_ATTRIBUTE);
+        LOG.debug("Located Cassandra Keyspace: '" + keyspaceName + "' in cluster '" + clusterName + 
+          "' on host '" + hostName + "'.");
         if (keyspaceName == null) {
-    	    LOG.error("Error locating Cassandra Keyspace name attribute!");
-    	    continue;
-        }
-        else {
-    	    // LOG.info("Located Cassandra Keyspace name: '" + NAME_ATTRIBUTE + "' -> " + keyspaceName);
+          LOG.error("Error locating Cassandra Keyspace name attribute!");
+          continue;
         }
         keyspaceMap.put(keyspaceName, keyspace);
       }
@@ -133,15 +125,16 @@ public class CassandraMappingManager {
       LOG.error("Error locating Cassandra Mapping class element!");
     }
     else {
-      // LOG.info("Located Cassandra Mapping: '" + MAPPING_ELEMENT + "'");
       for (Element mapping : mappings) {
+        // associate persistent and class names for keyspace(s)
         String className = mapping.getAttributeValue(NAME_ATTRIBUTE);
+        String keyClassName = mapping.getAttributeValue(KEYCLASS_ATTRIBUTE);
+        String keyspaceName = mapping.getAttributeValue(KEYSPACE_ELEMENT);
+        LOG.debug("Located Cassandra Mapping: keyClass: '" + keyClassName + "' in storage class '" 
+          + className + "' for Keyspace '" + keyspaceName + "'.");
         if (className == null) {
-    	    LOG.error("Error locating Cassandra Mapping class name attribute!");
-    	    continue;
-        }
-        else {
-    	    // LOG.info("Located Cassandra Mapping class name: '" + NAME_ATTRIBUTE + "' -> " + className);
+          LOG.error("Error locating Cassandra Mapping class name attribute!");
+          continue;
         }
         mappingMap.put(className, mapping);
       }