Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/HashLockedDomainServiceTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/HashLockedDomainServiceTest.java?rev=737884&r1=737883&r2=737884&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/HashLockedDomainServiceTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/HashLockedDomainServiceTest.java
 Mon Jan 26 22:01:33 2009
@@ -24,9 +24,9 @@
 import static org.easymock.EasyMock.expect;
 import static org.easymock.EasyMock.isA;
 
-import org.apache.shindig.common.ContainerConfig;
 import org.apache.shindig.common.EasyMockTestCase;
 import org.apache.shindig.common.uri.Uri;
+import org.apache.shindig.config.ContainerConfig;
 import org.apache.shindig.gadgets.spec.GadgetSpec;
 
 import java.util.Arrays;
@@ -59,14 +59,14 @@
   @Override
   protected void setUp() throws Exception {
     super.setUp();
-    expect(requiredConfig.get(ContainerConfig.DEFAULT_CONTAINER,
+    expect(requiredConfig.getString(ContainerConfig.DEFAULT_CONTAINER,
         LOCKED_DOMAIN_SUFFIX_KEY)).andReturn("-a.example.com:8080").anyTimes();
-    expect(requiredConfig.get(ContainerConfig.DEFAULT_CONTAINER,
-        LOCKED_DOMAIN_REQUIRED_KEY)).andReturn("true").anyTimes();
+    expect(requiredConfig.getBool(ContainerConfig.DEFAULT_CONTAINER,
+        LOCKED_DOMAIN_REQUIRED_KEY)).andReturn(true).anyTimes();
     expect(requiredConfig.getContainers())
         
.andReturn(Arrays.asList(ContainerConfig.DEFAULT_CONTAINER)).anyTimes();
 
-    expect(enabledConfig.get(ContainerConfig.DEFAULT_CONTAINER,
+    expect(enabledConfig.getString(ContainerConfig.DEFAULT_CONTAINER,
         LOCKED_DOMAIN_SUFFIX_KEY)).andReturn("-a.example.com:8080").anyTimes();
     expect(enabledConfig.getContainers())
         
.andReturn(Arrays.asList(ContainerConfig.DEFAULT_CONTAINER)).anyTimes();
@@ -163,9 +163,9 @@
     ContainerConfig inheritsConfig  = mock(ContainerConfig.class);
     expect(inheritsConfig.getContainers())
         .andReturn(Arrays.asList(ContainerConfig.DEFAULT_CONTAINER, "other"));
-    expect(inheritsConfig.get(isA(String.class), 
eq(LOCKED_DOMAIN_REQUIRED_KEY)))
-        .andReturn("true").anyTimes();
-    expect(inheritsConfig.get(isA(String.class), eq(LOCKED_DOMAIN_SUFFIX_KEY)))
+    expect(inheritsConfig.getBool(isA(String.class), 
eq(LOCKED_DOMAIN_REQUIRED_KEY)))
+        .andReturn(true).anyTimes();
+    expect(inheritsConfig.getString(isA(String.class), 
eq(LOCKED_DOMAIN_SUFFIX_KEY)))
         .andReturn("-a.example.com:8080").anyTimes();
     replay();
 

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/JsFeatureLoaderTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/JsFeatureLoaderTest.java?rev=737884&r1=737883&r2=737884&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/JsFeatureLoaderTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/JsFeatureLoaderTest.java
 Mon Jan 26 22:01:33 2009
@@ -20,9 +20,9 @@
 import static org.easymock.EasyMock.eq;
 import static org.easymock.EasyMock.expect;
 
-import org.apache.shindig.common.ContainerConfig;
 import org.apache.shindig.common.EasyMockTestCase;
 import org.apache.shindig.common.uri.Uri;
+import org.apache.shindig.config.ContainerConfig;
 import org.apache.shindig.gadgets.http.HttpFetcher;
 import org.apache.shindig.gadgets.http.HttpRequest;
 import org.apache.shindig.gadgets.http.HttpResponse;

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/preload/PipelinedDataPreloaderTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/preload/PipelinedDataPreloaderTest.java?rev=737884&r1=737883&r2=737884&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/preload/PipelinedDataPreloaderTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/preload/PipelinedDataPreloaderTest.java
 Mon Jan 26 22:01:33 2009
@@ -21,7 +21,7 @@
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
-import org.apache.shindig.common.ContainerConfig;
+import org.apache.shindig.config.ContainerConfig;
 import org.apache.shindig.gadgets.http.HttpRequest;
 import org.apache.shindig.gadgets.http.HttpResponse;
 import org.apache.shindig.gadgets.http.HttpResponseBuilder;
@@ -64,7 +64,7 @@
   @Before
   public void createContainerConfig() {
     containerConfig = EasyMock.createMock(ContainerConfig.class);
-    EasyMock.expect(containerConfig.get(CONTAINER, 
"gadgets.osDataUri")).andStubReturn(
+    EasyMock.expect(containerConfig.getString(CONTAINER, 
"gadgets.osDataUri")).andStubReturn(
         "http://%host%/social/rpc";);
     EasyMock.replay(containerConfig);
   }

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/process/ProcessorTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/process/ProcessorTest.java?rev=737884&r1=737883&r2=737884&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/process/ProcessorTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/process/ProcessorTest.java
 Mon Jan 26 22:01:33 2009
@@ -21,9 +21,8 @@
 import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 
-import org.apache.shindig.common.ContainerConfigException;
-import org.apache.shindig.common.JsonContainerConfig;
 import org.apache.shindig.common.uri.Uri;
+import org.apache.shindig.config.AbstractContainerConfig;
 import org.apache.shindig.gadgets.Gadget;
 import org.apache.shindig.gadgets.GadgetBlacklist;
 import org.apache.shindig.gadgets.GadgetContext;
@@ -32,13 +31,16 @@
 import org.apache.shindig.gadgets.spec.GadgetSpec;
 import org.apache.shindig.gadgets.variables.VariableSubstituter;
 
-import org.json.JSONArray;
-import org.json.JSONObject;
+import com.google.common.collect.Maps;
+
 import org.junit.Before;
 import org.junit.Test;
 
 import java.net.URI;
 import java.util.Arrays;
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
 
 public class ProcessorTest {
   private static final Uri SPEC_URL = 
Uri.parse("http://example.org/gadget.xml";);
@@ -100,8 +102,8 @@
 
   @Test
   public void doViewAliasing() throws Exception {
-    JSONArray aliases = new JSONArray(Arrays.asList("some-alias", "alias"));
-    containerConfig.json.put("gadgets.features/views/aliased/aliases", 
aliases);
+    List<Object> aliases = Arrays.<Object>asList("some-alias", "alias");
+    containerConfig.data.put("${gadgets\\.features.views.aliased.aliases}", 
aliases);
     Gadget gadget = processor.process(makeContext("aliased"));
     assertEquals(BASIC_HTML_CONTENT, gadget.getCurrentView().getContent());
   }
@@ -159,16 +161,22 @@
     }
   }
 
-  private static class FakeContainerConfig extends JsonContainerConfig {
-    protected final JSONObject json = new JSONObject();
+  private static class FakeContainerConfig extends AbstractContainerConfig {
+    protected final Map<String, Object> data = Maps.newHashMap();
 
-    public FakeContainerConfig() throws ContainerConfigException {
-      super(null);
+    @Override
+    public Object getProperty(String container, String parameter) {
+      return data.get(parameter);
+    }
+
+    @Override
+    public Collection<String> getContainers() {
+      return null;
     }
 
     @Override
-    public Object getJson(String container, String parameter) {
-      return json.opt(parameter);
+    public Map<String, Object> getProperties(String container) {
+      return null;
     }
   }
 

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/render/RendererTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/render/RendererTest.java?rev=737884&r1=737883&r2=737884&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/render/RendererTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/render/RendererTest.java
 Mon Jan 26 22:01:33 2009
@@ -22,9 +22,8 @@
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
-import org.apache.shindig.common.ContainerConfigException;
-import org.apache.shindig.common.JsonContainerConfig;
 import org.apache.shindig.common.uri.Uri;
+import org.apache.shindig.config.AbstractContainerConfig;
 import org.apache.shindig.gadgets.Gadget;
 import org.apache.shindig.gadgets.GadgetContext;
 import org.apache.shindig.gadgets.GadgetException;
@@ -34,12 +33,13 @@
 import org.apache.shindig.gadgets.spec.GadgetSpec;
 import org.apache.shindig.gadgets.spec.View;
 
-import org.json.JSONArray;
-import org.json.JSONObject;
+import com.google.common.collect.Maps;
+
 import org.junit.Before;
 import org.junit.Test;
 
 import java.util.Arrays;
+import java.util.Map;
 
 /**
  * Tests for Renderer.
@@ -131,8 +131,8 @@
 
   @Test
   public void validateParent() throws Exception {
-    containerConfig.json.put("gadgets.parent",
-        new JSONArray(Arrays.asList("http:\\/\\/example\\.org\\/[a-z]+", 
"localhost")));
+    containerConfig.data.put("gadgets.parent",
+        Arrays.asList("http:\\/\\/example\\.org\\/[a-z]+", "localhost"));
 
     RenderingResults results = renderer.render(makeContext("html"));
     assertEquals(RenderingResults.Status.OK, results.getStatus());
@@ -140,8 +140,8 @@
 
   @Test
   public void validateBadParent() throws Exception {
-    containerConfig.json.put("gadgets.parent",
-        new JSONArray(Arrays.asList("http:\\/\\/example\\.com\\/[a-z]+", 
"localhost")));
+    containerConfig.data.put("gadgets.parent",
+        Arrays.asList("http:\\/\\/example\\.com\\/[a-z]+", "localhost"));
     RenderingResults results = renderer.render(makeContext("html"));
     assertEquals(RenderingResults.Status.ERROR, results.getStatus());
     assertNotNull("No error message provided for bad parent.", 
results.getErrorMessage());
@@ -167,16 +167,12 @@
     assertEquals(RenderingResults.Status.ERROR, results.getStatus());
   }
 
-  private static class FakeContainerConfig extends JsonContainerConfig {
-    protected final JSONObject json = new JSONObject();
-
-    public FakeContainerConfig() throws ContainerConfigException {
-      super(null);
-    }
+  private static class FakeContainerConfig extends AbstractContainerConfig {
+    protected final Map<String, Object> data = Maps.newHashMap();
 
     @Override
-    public Object getJson(String container, String parameter) {
-      return json.opt(parameter);
+    public Object getProperty(String container, String name) {
+      return data.get(name);
     }
   }
 

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/render/RenderingContentRewriterTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/render/RenderingContentRewriterTest.java?rev=737884&r1=737883&r2=737884&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/render/RenderingContentRewriterTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/render/RenderingContentRewriterTest.java
 Mon Jan 26 22:01:33 2009
@@ -21,19 +21,14 @@
 import static 
org.apache.shindig.gadgets.render.RenderingContentRewriter.DEFAULT_CSS;
 import static 
org.apache.shindig.gadgets.render.RenderingContentRewriter.FEATURES_KEY;
 import static 
org.apache.shindig.gadgets.render.RenderingContentRewriter.INSERT_BASE_ELEMENT_KEY;
-import static org.easymock.EasyMock.expect;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
-import java.util.*;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.apache.shindig.common.ContainerConfig;
 import org.apache.shindig.common.PropertiesModule;
 import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.common.xml.XmlUtil;
+import org.apache.shindig.config.AbstractContainerConfig;
 import org.apache.shindig.gadgets.Gadget;
 import org.apache.shindig.gadgets.GadgetContext;
 import org.apache.shindig.gadgets.GadgetException;
@@ -53,14 +48,9 @@
 import org.apache.shindig.gadgets.spec.LocaleSpec;
 import org.apache.shindig.gadgets.spec.MessageBundle;
 import org.apache.shindig.gadgets.spec.View;
-import org.easymock.classextension.EasyMock;
-import org.easymock.classextension.IMocksControl;
-import org.json.JSONException;
-import org.json.JSONObject;
-import org.junit.Before;
-import org.junit.Test;
 
 import com.google.caja.util.Join;
+import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSortedSet;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
@@ -68,15 +58,29 @@
 import com.google.inject.Guice;
 import com.google.inject.Injector;
 
+import org.json.JSONException;
+import org.json.JSONObject;
+import org.junit.Before;
+import org.junit.Test;
+
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Set;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
 /**
  * Tests for RenderingContentRewriter.
  */
 public class RenderingContentRewriterTest {
   private static final Uri SPEC_URL = 
Uri.parse("http://example.org/gadget.xml";);
   private static final String BODY_CONTENT = "Some body content";
-  private final IMocksControl control = EasyMock.createNiceControl();
   private final FakeMessageBundleFactory messageBundleFactory = new 
FakeMessageBundleFactory();
-  private final ContainerConfig config = 
control.createMock(ContainerConfig.class);
+  private final FakeContainerConfig config = new FakeContainerConfig();
   private final UrlGenerator urlGenerator = new FakeUrlGenerator();
 
   private FakeGadgetFeatureRegistry featureRegistry;
@@ -124,8 +128,6 @@
   public void defaultOutput() throws Exception {
     Gadget gadget = makeDefaultGadget();
 
-    control.replay();
-
     String rewritten = rewrite(gadget, BODY_CONTENT);
 
     Matcher matcher = DOCUMENT_SPLIT_PATTERN.matcher(rewritten);
@@ -171,7 +173,6 @@
         .setContext(context);
 
     featureRegistry.addInline("foo", "does-not-matter");
-    control.replay();
 
     String rewritten = rewrite(gadget, doc);
 
@@ -205,8 +206,6 @@
 
     Gadget gadget = makeGadgetWithSpec(gadgetXml);
 
-    control.replay();
-
     String rewritten = rewrite(gadget, "");
 
     assertTrue("Bi-directional locale settings not preserved.",
@@ -248,7 +247,6 @@
     featureRegistry.addInline("foo", "does-not-matter");
     featureRegistry.addInline("bar", "does-not-matter");
     featureRegistry.addInline("baz", "does-not-matter");
-    control.replay();
 
     String rewritten = rewrite(gadget, "");
 
@@ -269,7 +267,6 @@
     Gadget gadget = makeGadgetWithSpec(gadgetXml);
 
     featureRegistry.addInline("foo", "foo_content();");
-    control.replay();
 
     String rewritten = rewrite(gadget, "");
 
@@ -301,7 +298,6 @@
     featureRegistry.addInline("foo", "foo_content();");
     featureRegistry.addInline("bar", "does-not-matter");
     featureRegistry.addInline("baz", "does-not-matter");
-    control.replay();
 
     String rewritten = rewrite(gadget, "");
 
@@ -314,7 +310,6 @@
   @Test
   public void featuresInjectedBeforeExistingScript() throws Exception {
     Gadget gadget = makeDefaultGadget();
-    control.replay();
 
     String rewritten = rewrite(gadget,
         "<html><head><script 
src=\"foo.js\"></script></head><body>hello</body></html>");
@@ -345,7 +340,6 @@
     Gadget gadget = makeGadgetWithSpec(gadgetXml);
 
     featureRegistry.addInline("foo", "gadgets.Prefs.setMessages_ = 
function(){};");
-    control.replay();
 
     String rewritten = rewrite(gadget, BODY_CONTENT);
 
@@ -388,7 +382,6 @@
     featureRegistry.addInline("foo", "foo_content();");
     featureRegistry.addExternal("bar", "http://example.org/external.js";);
     featureRegistry.addInline("baz", "does-not-matter");
-    control.replay();
 
     String rewritten = rewrite(gadget, "");
 
@@ -421,11 +414,7 @@
 
     featureRegistry.addInline("foo", "");
 
-    JSONObject conf = new JSONObject();
-    conf.put("foo", "blah");
-    expect(config.getJsonObject(ContainerConfig.DEFAULT_CONTAINER, 
FEATURES_KEY))
-        .andReturn(conf);
-    control.replay();
+    config.data.put(FEATURES_KEY, ImmutableMap.of("foo", "blah"));
 
     String rewritten = rewrite(gadget, "");
 
@@ -456,12 +445,11 @@
 
     featureRegistry.addInline("foo", "");
     featureRegistry.addInline("bar", "");
-    JSONObject conf = new JSONObject();
-    conf.put("foo", "blah")
-        .put("bar", "baz");
-    expect(config.getJsonObject(ContainerConfig.DEFAULT_CONTAINER, 
FEATURES_KEY))
-        .andReturn(conf);
-    control.replay();
+
+    config.data.put(FEATURES_KEY, ImmutableMap.of(
+        "foo", "blah",
+        "bar", "baz"
+    ));
 
     String rewritten = rewrite(gadget, "");
 
@@ -484,11 +472,7 @@
     Gadget gadget = makeGadgetWithSpec(gadgetXml);
 
     featureRegistry.addInline("foo", "");
-    JSONObject conf = new JSONObject();
-    conf.put("foo", "blah");
-    expect(config.getJsonObject(ContainerConfig.DEFAULT_CONTAINER, 
FEATURES_KEY))
-        .andReturn(conf);
-    control.replay();
+    config.data.put(FEATURES_KEY, ImmutableMap.of("foo", "blah"));
 
     String rewritten = rewrite(gadget, "");
 
@@ -518,8 +502,6 @@
 
     Gadget gadget = makeGadgetWithSpec(gadgetXml);
 
-    control.replay();
-
     String rewritten = rewrite(gadget, "");
 
     Pattern prefsPattern
@@ -551,8 +533,6 @@
 
     Gadget gadget = makeGadgetWithSpec(gadgetXml);
 
-    control.replay();
-
     rewrite(gadget, "");
   }
 
@@ -567,8 +547,6 @@
 
     Gadget gadget = makeGadgetWithSpec(gadgetXml);
 
-    control.replay();
-
     rewrite(gadget, "");
     // rewrite will throw if the optional unsupported feature doesn't work.
   }
@@ -585,8 +563,6 @@
 
     Gadget gadget = makeGadgetWithSpec(gadgetXml);
 
-    control.replay();
-
     rewrite(gadget, "");
     // rewrite will throw if the optional unsupported feature doesn't work.
   }
@@ -625,7 +601,6 @@
     };
 
     Gadget gadget = makeDefaultGadget().setPreloads(preloads);
-    control.replay();
 
     String rewritten = rewrite(gadget, "");
 
@@ -650,8 +625,6 @@
     };
 
     Gadget gadget = makeDefaultGadget().setPreloads(preloads);
-    control.replay();
-
     String rewritten = rewrite(gadget, "");
 
     JSONObject json = getPreloadedJson(rewritten);
@@ -674,10 +647,7 @@
   public void baseElementInsertedWhenContentIsInline() throws Exception {
     Gadget gadget = makeDefaultGadget();
 
-    expect(config.get(ContainerConfig.DEFAULT_CONTAINER, 
INSERT_BASE_ELEMENT_KEY))
-        .andReturn("true");
-
-    control.replay();
+    config.data.put(INSERT_BASE_ELEMENT_KEY, true);
 
     String rewritten = rewrite(gadget, BODY_CONTENT);
     String base = getBaseElement(rewritten);
@@ -694,10 +664,7 @@
     View fakeView = new View("foo", Arrays.asList(XmlUtil.parse(xml)), 
SPEC_URL);
     gadget.setCurrentView(fakeView);
 
-    expect(config.get(ContainerConfig.DEFAULT_CONTAINER, 
INSERT_BASE_ELEMENT_KEY))
-        .andReturn("true");
-
-    control.replay();
+    config.data.put(INSERT_BASE_ELEMENT_KEY, true);
 
     String rewritten = rewrite(gadget, BODY_CONTENT);
     String base = getBaseElement(rewritten);
@@ -709,15 +676,22 @@
   public void baseElementNotInsertedWhenConfigDoesNotAllowIt() throws 
Exception {
     Gadget gadget = makeDefaultGadget();
 
-    expect(config.get(ContainerConfig.DEFAULT_CONTAINER, 
INSERT_BASE_ELEMENT_KEY))
-        .andReturn("false");
-
-    control.replay();
+    config.data.put(INSERT_BASE_ELEMENT_KEY, false);
 
     String rewritten = rewrite(gadget, BODY_CONTENT);
     assertFalse("Base element injected incorrectly.", 
rewritten.contains("<base"));
   }
 
+  private static class FakeContainerConfig extends AbstractContainerConfig {
+    protected final Map<String, Object> data = Maps.newHashMap();
+
+    @Override
+    public Object getProperty(String container, String name) {
+      return data.get(name);
+    }
+
+  }
+
   /**
    * Simple message bundle factory -- only honors inline bundles.
    */

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/HttpUtilTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/HttpUtilTest.java?rev=737884&r1=737883&r2=737884&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/HttpUtilTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/HttpUtilTest.java
 Mon Jan 26 22:01:33 2009
@@ -20,22 +20,22 @@
 
 import static org.easymock.EasyMock.expect;
 
-import org.apache.shindig.common.ContainerConfig;
+import org.apache.shindig.config.AbstractContainerConfig;
 import org.apache.shindig.gadgets.GadgetContext;
 
+import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSet;
-
-import org.json.JSONException;
-import org.json.JSONObject;
+import com.google.common.collect.Maps;
 
 import java.util.Collections;
+import java.util.Map;
 import java.util.Set;
 
 public class HttpUtilTest extends ServletTestFixture {
   private final static String CONTAINER = "container";
   private final static String FEATURE_0 = "featureZero";
   private final static String FEATURE_1 = "feature-One";
-  private final ContainerConfig containerConfig = mock(ContainerConfig.class);
+  private final FakeContainerConfig containerConfig = new 
FakeContainerConfig();
 
   private final GadgetContext context = mock(GadgetContext.class);
 
@@ -83,45 +83,40 @@
     checkCacheControlHeaders(0, true);
   }
 
-  private void assertJsonEquals(JSONObject lhs, JSONObject rhs) throws 
JSONException {
-    for (String key : JSONObject.getNames(lhs)) {
-      Object obj = lhs.get(key);
-      if (obj instanceof String) {
-        assertEquals(obj, rhs.get(key));
-      } else if (obj instanceof JSONObject) {
-        assertJsonEquals((JSONObject)obj, rhs.getJSONObject(key));
-      } else {
-        fail("Unsupported type: " + obj.getClass());
-      }
-    }
-  }
-
-  public void testGetJsConfig() throws JSONException {
-    JSONObject features = new JSONObject()
-        .put(FEATURE_0, "config")
-        .put(FEATURE_1, "other config");
+  public void testGetJsConfig() {
+    Map<String, String> features = ImmutableMap.of(
+        FEATURE_0, "config",
+        FEATURE_1, "other config"
+    );
 
     Set<String> needed = ImmutableSet.of(FEATURE_0, FEATURE_1);
 
     expect(context.getContainer()).andReturn(CONTAINER);
-    expect(containerConfig.getJsonObject(CONTAINER, "gadgets.features"))
-        .andReturn(features);
 
+    containerConfig.data.put("gadgets.features", features);
     replay();
 
-    assertJsonEquals(features, HttpUtil.getJsConfig(containerConfig, context, 
needed));
+    assertEquals(features,  HttpUtil.getJsConfig(containerConfig, context, 
needed));
   }
 
   public void testGetJsConfigNoFeatures() {
     expect(context.getContainer()).andReturn(CONTAINER);
-    expect(containerConfig.getJsonObject(CONTAINER, "gadgets.features"))
-        .andReturn(null);
 
     replay();
 
-    JSONObject results = HttpUtil.getJsConfig(containerConfig, context,
+    Map<String, Object> results = HttpUtil.getJsConfig(containerConfig, 
context,
         Collections.<String>emptySet());
 
-    assertEquals("Results should be empty when there are no features", 0, 
results.length());
+    assertEquals("Results should be empty when there are no features", 0, 
results.size());
+  }
+
+  private static class FakeContainerConfig extends AbstractContainerConfig {
+    protected final Map<String, Object> data = Maps.newHashMap();
+
+    @Override
+    public Object getProperty(String container, String name) {
+      return data.get(name);
+    }
+
   }
-}
\ No newline at end of file
+}

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/ProxyBaseTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/ProxyBaseTest.java?rev=737884&r1=737883&r2=737884&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/ProxyBaseTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/ProxyBaseTest.java
 Mon Jan 26 22:01:33 2009
@@ -20,8 +20,8 @@
 
 import static org.easymock.EasyMock.expect;
 
-import org.apache.shindig.common.ContainerConfig;
 import org.apache.shindig.common.uri.Uri;
+import org.apache.shindig.config.ContainerConfig;
 import org.apache.shindig.gadgets.GadgetException;
 import org.apache.shindig.gadgets.http.HttpResponse;
 import org.apache.shindig.gadgets.http.HttpResponseBuilder;

Modified: 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/DataServiceServlet.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/DataServiceServlet.java?rev=737884&r1=737883&r2=737884&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/DataServiceServlet.java
 (original)
+++ 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/DataServiceServlet.java
 Mon Jan 26 22:01:33 2009
@@ -18,31 +18,26 @@
 package org.apache.shindig.social.opensocial.service;
 
 import org.apache.shindig.auth.SecurityToken;
-import org.apache.shindig.common.ContainerConfig;
+import org.apache.shindig.config.ContainerConfig;
 import org.apache.shindig.social.ResponseError;
 import org.apache.shindig.social.opensocial.spi.DataCollection;
 import org.apache.shindig.social.opensocial.spi.RestfulCollection;
 
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
 import com.google.common.base.Objects;
+import com.google.common.collect.ImmutableMap;
 import com.google.inject.Inject;
 
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.List;
 import java.util.Map;
-import java.util.logging.Logger;
 import java.util.logging.Level;
+import java.util.logging.Logger;
+
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
 public class DataServiceServlet extends ApiServlet {
 
   protected static final String FORMAT_PARAM = "format";
@@ -155,56 +150,15 @@
 
     String container = 
Objects.firstNonNull(requestItem.getToken().getContainer(), "default");
     // TODO: hardcoding opensocial-0.8 is brittle
-    JSONArray fields = config.getJsonArray(container,
-        "gadgets.features/opensocial-0.8/supportedFields/" + configProperty);
+    List<Object> fields = config.getList(container,
+        "${gadgets\\.features.opensocial-0\\.8.supportedFields." + 
configProperty + '}');
 
-    if (fields == null) {
+    if (fields.size() == 0) {
       return new ResponseItem(ResponseError.NOT_IMPLEMENTED,"Supported fields 
not available for" +
                " service \"" + service + '\"');
     }
 
-    return new ResponseItem(toList(fields));
-  }
-
-  // TODO: delete this when Kevin lands his config changes
-  private Object toList(JSONArray fields) {
-    List<Object> list = Lists.newArrayList();
-    for (int index = 0; index < fields.length(); index++) {
-      try {
-        Object o = fields.get(index);
-        if (o instanceof JSONObject) {
-          list.add(toMap((JSONObject) o));
-        } else {
-          list.add(fields.get(index));
-        }
-      } catch (JSONException e) {
-        // Ignore
-      }
-    }
-
-    return list;
-  }
-
-  // TODO: delete this when Kevin lands his config changes
-  private Object toMap(JSONObject json) {
-    Map<String, Object> map = Maps.newHashMap();
-
-    for (String name : JSONObject.getNames(json)) {
-      try {
-        Object o = json.get(name);
-        if (o instanceof JSONObject) {
-          o = toMap((JSONObject) o);
-        } else if (o instanceof JSONArray) {
-          o = toList((JSONArray) o);
-        }
-
-        map.put(name, o);
-      } catch (JSONException e) {
-        // Ignore
-      }
-    }
-
-    return map;
+    return new ResponseItem(fields);
   }
 
   BeanConverter getConverterForRequest(HttpServletRequest servletRequest) {


Reply via email to