Modified: rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/FieldRestrictingPersonTest.java URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/FieldRestrictingPersonTest.java?rev=1426593&r1=1426592&r2=1426593&view=diff ============================================================================== --- rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/FieldRestrictingPersonTest.java (original) +++ rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/FieldRestrictingPersonTest.java Fri Dec 28 17:43:23 2012 @@ -645,23 +645,23 @@ public class FieldRestrictingPersonTest person.setPreferredName(PREFERRED_NAME); person.setStatus(STATUS); List<PersonProperty> properties = new ArrayList<PersonProperty>(); - properties.add(new PersonPropertyImpl(1L, "gender", Person.Gender.female.toString(), null, "", false)); - properties.add(new PersonPropertyImpl(1L, "drinker", Drinker.HEAVILY.toString(), null, "", false)); - properties.add(new PersonPropertyImpl(1L, "age", AGE.toString(), null, "", false)); - properties.add(new PersonPropertyImpl(1L, "birthday", BIRTHDAY_STRING, null, "", false)); - properties.add(new PersonPropertyImpl(1L, "bodyType", BODY_BUILD, null, "build", false)); - properties.add(new PersonPropertyImpl(1L, "bodyType", BODY_EYE_COLOR, null, "eyeColor", false)); - properties.add(new PersonPropertyImpl(1L, "bodyType", "25.24", null, "height", false)); - properties.add(new PersonPropertyImpl(1L, "ims", IM_1, null, IM_PROVIDER_1, true)); - properties.add(new PersonPropertyImpl(1L, "ims", IM_2, null, IM_PROVIDER_2, false)); - properties.add(new PersonPropertyImpl(1L, "emails", E_MAIL_ADDRESS_2, null, "personal", false)); - properties.add(new PersonPropertyImpl(1L, "emails", E_MAIL_ADDRESS_3, null, "junk", true)); - properties.add(new PersonPropertyImpl(1L, "activities", ACTIVITY_1, null, "", false)); - properties.add(new PersonPropertyImpl(1L, "activities", ACTIVITY_2, null, "", false)); - properties.add(new PersonPropertyImpl(1L, "profileSong", LINK_VALUE, LINK_TEXT, null, false)); - properties.add(new PersonPropertyImpl(1L, "lookingFor", LookingFor.FRIENDS.toString(), null, null, false)); - properties.add(new PersonPropertyImpl(1L, "currentLocation", QUALIFIER, null, null, null)); - properties.add(new PersonPropertyImpl(1L, "account", IM_1, "1", IM_PROVIDER_1, false)); + properties.add(new PersonPropertyImpl("1", "gender", Person.Gender.female.toString(), null, "", false)); + properties.add(new PersonPropertyImpl("1", "drinker", Drinker.HEAVILY.toString(), null, "", false)); + properties.add(new PersonPropertyImpl("1", "age", AGE.toString(), null, "", false)); + properties.add(new PersonPropertyImpl("1", "birthday", BIRTHDAY_STRING, null, "", false)); + properties.add(new PersonPropertyImpl("1", "bodyType", BODY_BUILD, null, "build", false)); + properties.add(new PersonPropertyImpl("1", "bodyType", BODY_EYE_COLOR, null, "eyeColor", false)); + properties.add(new PersonPropertyImpl("1", "bodyType", "25.24", null, "height", false)); + properties.add(new PersonPropertyImpl("1", "ims", IM_1, null, IM_PROVIDER_1, true)); + properties.add(new PersonPropertyImpl("1", "ims", IM_2, null, IM_PROVIDER_2, false)); + properties.add(new PersonPropertyImpl("1", "emails", E_MAIL_ADDRESS_2, null, "personal", false)); + properties.add(new PersonPropertyImpl("1", "emails", E_MAIL_ADDRESS_3, null, "junk", true)); + properties.add(new PersonPropertyImpl("1", "activities", ACTIVITY_1, null, "", false)); + properties.add(new PersonPropertyImpl("1", "activities", ACTIVITY_2, null, "", false)); + properties.add(new PersonPropertyImpl("1", "profileSong", LINK_VALUE, LINK_TEXT, null, false)); + properties.add(new PersonPropertyImpl("1", "lookingFor", LookingFor.FRIENDS.toString(), null, null, false)); + properties.add(new PersonPropertyImpl("1", "currentLocation", QUALIFIER, null, null, null)); + properties.add(new PersonPropertyImpl("1", "account", IM_1, "1", IM_PROVIDER_1, false)); person.setProperties(properties); org.apache.rave.portal.model.Address address = new AddressImpl(); address.setCountry(COUNTRY);
Modified: rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/PersonServiceTest.java URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/PersonServiceTest.java?rev=1426593&r1=1426592&r2=1426593&view=diff ============================================================================== --- rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/PersonServiceTest.java (original) +++ rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/PersonServiceTest.java Fri Dec 28 17:43:23 2012 @@ -508,8 +508,8 @@ public class PersonServiceTest { dbPerson.setUsername(id); dbPerson.setDisplayName(DISPLAY_NAME); List<PersonProperty> properties = new ArrayList<PersonProperty>(); - properties.add(new PersonPropertyImpl(1L, Person.Field.TAGS.toString(), TAG, null, null, null)); - properties.add(new PersonPropertyImpl(2L, Person.Field.HAPPIEST_WHEN.toString(), HAPPIEST_WHEN, null, null, null)); + properties.add(new PersonPropertyImpl("1", Person.Field.TAGS.toString(), TAG, null, null, null)); + properties.add(new PersonPropertyImpl("2", Person.Field.HAPPIEST_WHEN.toString(), HAPPIEST_WHEN, null, null, null)); dbPerson.setProperties(properties); return dbPerson; } Modified: rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/pom.xml URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/pom.xml?rev=1426593&r1=1426592&r2=1426593&view=diff ============================================================================== --- rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/pom.xml (original) +++ rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/pom.xml Fri Dec 28 17:43:23 2012 @@ -26,7 +26,7 @@ <parent> <artifactId>rave-opensocial-provider</artifactId> <groupId>org.apache.rave</groupId> - <version>0.17-MONGO-SNAPSHOT</version> + <version>0.19-SNAPSHOT</version> </parent> <artifactId>rave-opensocial-server</artifactId> Modified: rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/pom.xml URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/pom.xml?rev=1426593&r1=1426592&r2=1426593&view=diff ============================================================================== --- rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/pom.xml (original) +++ rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/pom.xml Fri Dec 28 17:43:23 2012 @@ -26,7 +26,7 @@ <parent> <groupId>org.apache.rave</groupId> <artifactId>rave-opensocial-server</artifactId> - <version>0.17-MONGO-SNAPSHOT</version> + <version>0.19-SNAPSHOT</version> </parent> <artifactId>rave-shindig</artifactId> Modified: rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/resources/rave.shindig.properties URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/resources/rave.shindig.properties?rev=1426593&r1=1426592&r2=1426593&view=diff ============================================================================== --- rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/resources/rave.shindig.properties (original) +++ rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/resources/rave.shindig.properties Fri Dec 28 17:43:23 2012 @@ -248,6 +248,9 @@ org.apache.shindig.gadgets.servlet.longL # Defaults to simple. shindig.closure.compile.level=simple +# Size of the compiler thread pool +shindig.closure.compile.threadPoolSize=5 + # OAuth 2.0 authorization code, access token, and refresh token expiration times. # 5 * 60 * 1000 = 300000 = 5 minutes # 5 * 60 * 60 * 1000 = 18000000 = 5 hours @@ -257,4 +260,8 @@ shindig.oauth2.accessTokenExpiration=180 shindig.oauth2.refreshTokenExpiration=432000000 # Allows unauthenticated requests to Shindig -shindig.allowUnauthenticated=true \ No newline at end of file +shindig.allowUnauthenticated=true + +# Comma separated tags that need to have its relative path to be resolved as absolute. +# Possible values are RESOURCES and HYPERLINKS +shindig.gadgets.rewriter.absolutePath.tags=RESOURCES Modified: rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/webapp/WEB-INF/classes/containers/default/container.js URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/webapp/WEB-INF/classes/containers/default/container.js?rev=1426593&r1=1426592&r2=1426593&view=diff ============================================================================== --- rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/webapp/WEB-INF/classes/containers/default/container.js (original) +++ rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/webapp/WEB-INF/classes/containers/default/container.js Fri Dec 28 17:43:23 2012 @@ -75,7 +75,7 @@ // Config param to load Opensocial data for social // preloads in data pipelining. %host% will be // substituted with the current host. -"gadgets.osDataUri" : "http://%host%${CONTEXT_ROOT}/rpc", +"gadgets.osDataUri" : "//%host%${CONTEXT_ROOT}/rpc", // Use an insecure security token by default //"gadgets.securityTokenType" : "insecure", @@ -158,10 +158,16 @@ "core.io" : { // Note: ${Cur['gadgets.uri.proxy.path']} is an open proxy. Be careful how you expose this! // Note: These urls should be protocol relative (start with //) - "proxyUrl" : "//${Cur['default.domain.unlocked.client']}${Cur['gadgets.uri.proxy.path']}?container=%container%&refresh=%refresh%&url=%url%%authz%%rewriteMime%", + "proxyUrl" : "//${Cur['default.domain.unlocked.client']}${Cur['gadgets.uri.proxy.path']}%filename%?container=%container%&refresh=%refresh%&url=%url%%authz%%rewriteMime%", "jsonProxyUrl" : "//${Cur['default.domain.locked.client']}${CONTEXT_ROOT}/gadgets/makeRequest", // Note: this setting MUST be supplied in every container config object, as there is no default if it is not supplied. - "unparseableCruft" : "throw 1; < don't be evil' >" + "unparseableCruft" : "throw 1; < don't be evil' >", + + // This variable is needed during the config init to parse config augmentation + "jsPath" : "${Cur['gadgets.uri.js.path']}", + + // interval in milliseconds used to poll xhr request for the readyState + "xhrPollIntervalMs" : 50 }, "views" : { "profile" : { @@ -231,14 +237,14 @@ ] }, "minimessage": { - "css": [ - ".mmlib_table {", - "width: 100%;", - "font: bold 9px arial,sans-serif;", - "background-color: #fff4c2;", - "border-collapse: separate;", - "border-spacing: 0px;", - "padding: 1px 0px;", + "css": [ + ".mmlib_table {", + "width: 100%;", + "font: bold 9px arial,sans-serif;", + "background-color: #fff4c2;", + "border-collapse: separate;", + "border-spacing: 0px;", + "padding: 1px 0px;", "}", ".mmlib_xlink {", "font: normal 1.1em arial,sans-serif;", @@ -246,7 +252,7 @@ "color: #0000cc;", "cursor: pointer;", "}" - ] + ] }, "rpc" : { // Path to the relay file. Automatically appended to the parent @@ -322,6 +328,9 @@ "relayPath": "${CONTEXT_ROOT}/gadgets/files/container/rpc_relay.html", //Enables/Disables the RPC arbitrator functionality in the common container - "enableRpcArbitration": false + "enableRpcArbitration": false, + + // This variable is needed during the container feature init. + "jsPath" : "${Cur['gadgets.uri.js.path']}" } }} Modified: rave/branches/mongo/rave-providers/rave-w3c-provider/pom.xml URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-w3c-provider/pom.xml?rev=1426593&r1=1426592&r2=1426593&view=diff ============================================================================== --- rave/branches/mongo/rave-providers/rave-w3c-provider/pom.xml (original) +++ rave/branches/mongo/rave-providers/rave-w3c-provider/pom.xml Fri Dec 28 17:43:23 2012 @@ -26,7 +26,7 @@ <parent> <artifactId>rave-providers</artifactId> <groupId>org.apache.rave</groupId> - <version>0.17-MONGO-SNAPSHOT</version> + <version>0.19-SNAPSHOT</version> </parent> <artifactId>rave-w3c-provider</artifactId> Modified: rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/service/impl/W3CWidget.java URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/service/impl/W3CWidget.java?rev=1426593&r1=1426592&r2=1426593&view=diff ============================================================================== --- rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/service/impl/W3CWidget.java (original) +++ rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/service/impl/W3CWidget.java Fri Dec 28 17:43:23 2012 @@ -34,6 +34,10 @@ public class W3CWidget extends WidgetImp public W3CWidget() { } + + public W3CWidget(String id) { + super(id); + } /** * @return the width Modified: rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRenderer.java URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRenderer.java?rev=1426593&r1=1426592&r2=1426593&view=diff ============================================================================== --- rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRenderer.java (original) +++ rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRenderer.java Fri Dec 28 17:43:23 2012 @@ -27,6 +27,7 @@ import org.apache.rave.portal.web.render import org.apache.rave.portal.web.renderer.RenderScope; import org.apache.rave.portal.web.renderer.ScriptLocation; import org.apache.rave.portal.web.renderer.ScriptManager; +import org.apache.rave.portal.web.renderer.model.RegionWidgetWrapper; import org.apache.rave.portal.web.renderer.model.RenderContext; import org.apache.rave.provider.w3c.service.impl.W3CWidget; import org.json.JSONException; @@ -86,18 +87,19 @@ public class W3cWidgetRenderer implement /** * Renders a {@link org.apache.rave.portal.model.RegionWidget} as HTML markup * - * @param item RegionWidgetImpl to render + * @param wrapper RegionWidgetImpl to render * @param context * @return valid HTML markup */ @Override - public String render(RegionWidget item, RenderContext context) { - Widget widget = item.getWidget(); + public String render(RegionWidgetWrapper wrapper, RenderContext context) { + Widget widget = wrapper.getWidget(); + RegionWidget item = wrapper.getRegionWidget(); if(!WIDGET_TYPE.equals(widget.getType())) { throw new NotSupportedException("Invalid widget type passed to renderer: " + widget.getType()); } - String widgetScript = getWidgetScript(item); + String widgetScript = getWidgetScript(item, widget); // the key is based off the RegionWidget.id to ensure uniqueness String key = REGISTER_WIDGET_KEY + "-" + item.getId(); scriptManager.registerScriptBlock(key, widgetScript, ScriptLocation.AFTER_RAVE, RenderScope.CURRENT_REQUEST, context); @@ -108,10 +110,12 @@ public class W3cWidgetRenderer implement /** * Create a widget script block + * * @param item the RegionWidget to create a script block for + * @param widget * @return the script block */ - private String getWidgetScript(RegionWidget item) { + private String getWidgetScript(RegionWidget item, Widget widget) { User user = userService.getAuthenticatedUser(); // @@ -122,7 +126,7 @@ public class W3cWidgetRenderer implement // // Get the Rave Widget for this regionWidget instance // - W3CWidget contextualizedWidget = (W3CWidget) widgetService.getWidget(user, sharedDataKey, item.getWidget()); + W3CWidget contextualizedWidget = (W3CWidget) widgetService.getWidget(user, sharedDataKey, widget); // // TODO make this do something useful; currently these preferences aren't @@ -151,7 +155,7 @@ public class W3cWidgetRenderer implement // get attributes about the sub page this regionWidget is on. This is needed to assist the client in // determining which gadgets are on visible tabs/sub pages initially to make widget rendering more efficient - Long pageId = null; + String pageId = null; String pageName = ""; boolean isDefault = false; Page page = item.getRegion().getPage(); @@ -174,7 +178,7 @@ public class W3cWidgetRenderer implement height, width, item.isCollapsed(), - item.getWidget().getId(), + item.getWidgetId(), item.isLocked(), item.isHideChrome(), pageId, Modified: rave/branches/mongo/rave-providers/rave-w3c-provider/src/test/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRendererTest.java URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-w3c-provider/src/test/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRendererTest.java?rev=1426593&r1=1426592&r2=1426593&view=diff ============================================================================== --- rave/branches/mongo/rave-providers/rave-w3c-provider/src/test/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRendererTest.java (original) +++ rave/branches/mongo/rave-providers/rave-w3c-provider/src/test/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRendererTest.java Fri Dec 28 17:43:23 2012 @@ -26,6 +26,7 @@ import org.apache.rave.portal.service.Us import org.apache.rave.portal.service.WidgetProviderService; import org.apache.rave.portal.web.renderer.Renderer; import org.apache.rave.portal.web.renderer.ScriptManager; +import org.apache.rave.portal.web.renderer.model.RegionWidgetWrapper; import org.apache.rave.portal.web.renderer.model.RenderContext; import org.apache.rave.provider.w3c.Constants; import org.apache.rave.provider.w3c.service.impl.W3CWidget; @@ -46,7 +47,7 @@ public class W3cWidgetRendererTest { private static final String VALID_WIDGET_URL = "http://example.com/widgets/1"; private static final String VALID_WIDGET_INSTANCE_URL = "http://example.com/widgetinstances/1"; - private Renderer<RegionWidget> renderer; + private Renderer<RegionWidgetWrapper> renderer; private WidgetProviderService wookieService; private UserService userService; private RenderContext renderContext; @@ -59,7 +60,7 @@ public class W3cWidgetRendererTest { wookieService = createNiceMock(WidgetProviderService.class); userService = createNiceMock(UserService.class); scriptManager = createNiceMock(ScriptManager.class); - renderer = new W3cWidgetRenderer(wookieService, userService, scriptManager); + renderer = new W3cWidgetRenderer(wookieService, userService, scriptManager); } @Test @@ -69,13 +70,13 @@ public class W3cWidgetRendererTest { @Test public void render_valid() { - final long REGION_ID = 222L; - final long REGION_WIDGET_ID = 444L; - final long VALID_SUBPAGE_ID = 778899L; + final String REGION_ID = "222"; + final String REGION_WIDGET_ID = "444"; + final String VALID_SUBPAGE_ID = "778899"; final String VALID_SUBPAGE_NAME = "My Activity"; final boolean VALID_IS_DEFAULT_SUBPAGE = true; - User user = new UserImpl(9999L, "testUser"); + User user = new UserImpl("9999", "testUser"); expect(userService.getAuthenticatedUser()).andReturn(user); replay(userService); @@ -88,36 +89,38 @@ public class W3cWidgetRendererTest { subPage.setPageType(PageType.SUB_PAGE); page.getSubPages().add(subPage); - W3CWidget w = new W3CWidget(); + W3CWidget w = new W3CWidget("1"); w.setType(Constants.WIDGET_TYPE); w.setUrl("http://example.com/widgets/1"); Region region = new RegionImpl(REGION_ID); region.setPage(subPage); - RegionWidget rw = new RegionWidgetImpl(); - rw.setId(REGION_WIDGET_ID); - rw.setWidget(w); + RegionWidget rw = new RegionWidgetImpl(REGION_WIDGET_ID); + rw.setWidgetId(w.getId()); rw.setRegion(region); W3CWidget wookieWidget = new W3CWidget(); wookieWidget.setUrl(VALID_WIDGET_INSTANCE_URL); - expect(wookieService.getWidget(eq(user), eq(rw.getId().toString()), isA(Widget.class))).andReturn(wookieWidget); + RegionWidgetWrapper wrapper = new RegionWidgetWrapper(w, rw); + + expect(wookieService.getWidget(eq(user), eq(rw.getId()), isA(Widget.class))).andReturn(wookieWidget); replay(wookieService); - String placeholder = renderer.render(rw, renderContext); + String placeholder = renderer.render(wrapper, renderContext); assertEquals("Script block for widget is incorrect", "<!-- RegionWidget " + REGION_WIDGET_ID + " placeholder -->", placeholder); } @Test(expected = NotSupportedException.class) public void render_invalid() { - Widget w = new WidgetImpl(); + Widget w = new WidgetImpl("1"); w.setType("NONE"); w.setUrl(VALID_WIDGET_URL); - RegionWidget rw = new RegionWidgetImpl(); - rw.setId(1L); - rw.setWidget(w); + RegionWidget rw = new RegionWidgetImpl("1"); + rw.setWidgetId(w.getId()); + + RegionWidgetWrapper wrapper = new RegionWidgetWrapper(w, rw); RenderContext renderContext = createNiceMock(RenderContext.class); - renderer.render(rw, renderContext); + renderer.render(wrapper, renderContext); } }
