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) {
