Author: gdusbabek
Date: Thu Nov 18 17:33:56 2010
New Revision: 1036549

URL: http://svn.apache.org/viewvc?rev=1036549&view=rev
Log:
introduce seed_provider in config. patch by gdusbabek, reviewed by jbellis. 
CASSANDRA-1669

Added:
    cassandra/trunk/src/java/org/apache/cassandra/config/SeedProviderDef.java
Modified:
    cassandra/trunk/src/java/org/apache/cassandra/config/Config.java
    cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java

Modified: cassandra/trunk/src/java/org/apache/cassandra/config/Config.java
URL: 
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/config/Config.java?rev=1036549&r1=1036548&r2=1036549&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/config/Config.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/config/Config.java Thu Nov 18 
17:33:56 2010
@@ -35,6 +35,7 @@ public class Config
     public Boolean auto_bootstrap = false;
     public Boolean hinted_handoff_enabled = true;
     
+    public SeedProviderDef seed_provider;
     public String[] seeds;
     public DiskAccessMode disk_access_mode = DiskAccessMode.auto;
     

Modified: 
cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
URL: 
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java?rev=1036549&r1=1036548&r2=1036549&view=diff
==============================================================================
--- 
cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java 
(original)
+++ 
cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java 
Thu Nov 18 17:33:56 2010
@@ -47,7 +47,6 @@ import org.apache.cassandra.io.util.File
 import org.apache.cassandra.locator.*;
 import org.apache.cassandra.scheduler.IRequestScheduler;
 import org.apache.cassandra.scheduler.NoScheduler;
-import org.apache.cassandra.service.StorageService;
 import org.apache.cassandra.utils.FBUtilities;
 import org.apache.cassandra.utils.Pair;
 import org.yaml.snakeyaml.Loader;
@@ -129,6 +128,8 @@ public class    DatabaseDescriptor
             ksDesc.putListPropertyType("column_families", 
RawColumnFamily.class);
             TypeDescription cfDesc = new 
TypeDescription(RawColumnFamily.class);
             cfDesc.putListPropertyType("column_metadata", 
RawColumnDefinition.class);
+            TypeDescription seedDesc = new 
TypeDescription(SeedProviderDef.class);
+            seedDesc.putMapPropertyType("parameters", String.class, 
String.class);
             constructor.addTypeDescription(desc);
             constructor.addTypeDescription(ksDesc);
             constructor.addTypeDescription(cfDesc);
@@ -380,13 +381,13 @@ public class    DatabaseDescriptor
         }
         catch (ConfigurationException e)
         {
-            logger.error("Fatal error: " + e.getMessage());
+            logger.error("Fatal error: " + e.getMessage(), e);
             System.err.println("Bad configuration; unable to start server");
             System.exit(1);
         }
         catch (YAMLException e)
         {
-            logger.error("Fatal error: " + e.getMessage());
+            logger.error("Fatal error: " + e.getMessage(), e);
             System.err.println("Bad configuration; unable to start server");
             System.exit(1);
         }

Added: cassandra/trunk/src/java/org/apache/cassandra/config/SeedProviderDef.java
URL: 
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/config/SeedProviderDef.java?rev=1036549&view=auto
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/config/SeedProviderDef.java 
(added)
+++ cassandra/trunk/src/java/org/apache/cassandra/config/SeedProviderDef.java 
Thu Nov 18 17:33:56 2010
@@ -0,0 +1,36 @@
+package org.apache.cassandra.config;
+
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+public class SeedProviderDef
+{
+    public String class_name;
+    public Map<String, String> parameters;
+    
+    public SeedProviderDef(LinkedHashMap p)
+    {
+        class_name = (String)p.get("class_name");
+        parameters = (Map<String, String>)((List)p.get("parameters")).get(0);
+    }
+}


Reply via email to