Author: cgeer
Date: Tue Oct 30 23:03:02 2012
New Revision: 1403920
URL: http://svn.apache.org/viewvc?rev=1403920&view=rev
Log:
RAVE-838 Updated the OpenSocialWidgetRenderer and
EncrypedBlobSecurityTokenService to use the WidgetService instead of the
WidgetRepository directly.
Modified:
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/service/impl/EncryptedBlobSecurityTokenService.java
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/web/renderer/OpenSocialWidgetRenderer.java
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/test/java/org/apache/rave/provider/opensocial/service/SecurityTokenServiceTest.java
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/test/java/org/apache/rave/provider/opensocial/web/renderer/OpenSocialWidgetRendererTest.java
Modified:
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/service/impl/EncryptedBlobSecurityTokenService.java
URL:
http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/service/impl/EncryptedBlobSecurityTokenService.java?rev=1403920&r1=1403919&r2=1403920&view=diff
==============================================================================
---
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/service/impl/EncryptedBlobSecurityTokenService.java
(original)
+++
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/service/impl/EncryptedBlobSecurityTokenService.java
Tue Oct 30 23:03:02 2012
@@ -25,6 +25,7 @@ import org.apache.rave.portal.model.User
import org.apache.rave.portal.model.impl.*;
import org.apache.rave.portal.repository.WidgetRepository;
import org.apache.rave.portal.service.UserService;
+import org.apache.rave.portal.service.WidgetService;
import org.apache.rave.provider.opensocial.exception.SecurityTokenException;
import org.apache.rave.provider.opensocial.service.SecurityTokenService;
import org.apache.shindig.auth.AbstractSecurityToken;
@@ -52,7 +53,7 @@ public class EncryptedBlobSecurityTokenS
public static final String CLASSPATH_KEY_PREFIX = "classpath:";
private UserService userService;
- private WidgetRepository widgetRepository;
+ private WidgetService widgetService;
private String container;
private String domain;
@@ -60,14 +61,14 @@ public class EncryptedBlobSecurityTokenS
@Autowired
public EncryptedBlobSecurityTokenService(UserService userService,
- WidgetRepository widgetRepository,
+ WidgetService widgetService,
@Value("${portal.opensocial_security.container}") String container,
@Value("${portal.opensocial_security.domain}") String domain,
@Value("${portal.opensocial_security.encryptionkey}") String encryptionKey) {
this.userService = userService;
this.container = container;
this.domain = domain;
- this.widgetRepository = widgetRepository;
+ this.widgetService = widgetService;
if (encryptionKey.startsWith(EMBEDDED_KEY_PREFIX)) {
this.blobCrypter = new
BasicBlobCrypter(encryptionKey.substring(EMBEDDED_KEY_PREFIX.length()));
@@ -156,7 +157,7 @@ public class EncryptedBlobSecurityTokenS
User user = userService.getAuthenticatedUser();
Map<String, String> values = new HashMap<String, String>();
- values.put(AbstractSecurityToken.Keys.APP_URL.getKey(),
widgetRepository.get(regionWidget.getWidgetId()).getUrl());
+ values.put(AbstractSecurityToken.Keys.APP_URL.getKey(),
widgetService.getWidget(regionWidget.getWidgetId()).getUrl());
values.put(AbstractSecurityToken.Keys.MODULE_ID.getKey(),
String.valueOf(regionWidget.getId()));
values.put(AbstractSecurityToken.Keys.OWNER.getKey(),
String.valueOf(userService.getUserById(regionWidget.getRegion().getPage().getOwnerId()).getUsername()));
Modified:
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/web/renderer/OpenSocialWidgetRenderer.java
URL:
http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/web/renderer/OpenSocialWidgetRenderer.java?rev=1403920&r1=1403919&r2=1403920&view=diff
==============================================================================
---
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/web/renderer/OpenSocialWidgetRenderer.java
(original)
+++
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/web/renderer/OpenSocialWidgetRenderer.java
Tue Oct 30 23:03:02 2012
@@ -22,6 +22,7 @@ package org.apache.rave.provider.opensoc
import org.apache.rave.exception.NotSupportedException;
import org.apache.rave.portal.model.*;
import org.apache.rave.portal.repository.WidgetRepository;
+import org.apache.rave.portal.service.WidgetService;
import org.apache.rave.portal.web.renderer.RegionWidgetRenderer;
import org.apache.rave.portal.web.renderer.RenderScope;
import org.apache.rave.portal.web.renderer.ScriptLocation;
@@ -51,17 +52,17 @@ public class OpenSocialWidgetRenderer im
private OpenSocialService openSocialService;
private SecurityTokenService securityTokenService;
private ScriptManager scriptManager;
- private WidgetRepository widgetRepository;
+ private WidgetService widgetService;
@Autowired
public OpenSocialWidgetRenderer(OpenSocialService openSocialService,
SecurityTokenService securityTokenService,
ScriptManager scriptManager,
- WidgetRepository widgetRepository) {
+ WidgetService widgetService) {
this.openSocialService = openSocialService;
this.securityTokenService = securityTokenService;
this.scriptManager = scriptManager;
- this.widgetRepository = widgetRepository;
+ this.widgetService = widgetService;
}
//Note the widgets.push() call. This defines the widget objects, which are
@@ -96,12 +97,13 @@ public class OpenSocialWidgetRenderer im
*/
@Override
public String render(RegionWidget item, RenderContext context) {
- String type = widgetRepository.get(item.getWidgetId()).getType();
+ Widget widget = widgetService.getWidget(item.getWidgetId());
+ String type = widget.getType();
if (!Constants.WIDGET_TYPE.equals(type)) {
throw new NotSupportedException("Invalid widget type passed to
renderer: " + type);
}
- 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() == null ? "" : "-"
+ item.getId());
scriptManager.registerScriptBlock(key, widgetScript,
ScriptLocation.AFTER_RAVE, RenderScope.CURRENT_REQUEST, context);
@@ -110,7 +112,7 @@ public class OpenSocialWidgetRenderer im
return String.format(MARKUP, item.getId());
}
- private String getWidgetScript(RegionWidget item) {
+ private String getWidgetScript(RegionWidget item, Widget widget) {
JSONObject userPrefs = new JSONObject();
if (item.getPreferences() != null) {
for (RegionWidgetPreference regionWidgetPreference :
item.getPreferences()) {
@@ -136,8 +138,6 @@ public class OpenSocialWidgetRenderer im
isDefault = isDefaultSubPage(page);
}
- Widget widget = widgetRepository.get(item.getWidgetId());
-
return String.format(SCRIPT_BLOCK,
item.getRegion().getId(),
Constants.WIDGET_TYPE,
Modified:
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/test/java/org/apache/rave/provider/opensocial/service/SecurityTokenServiceTest.java
URL:
http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/test/java/org/apache/rave/provider/opensocial/service/SecurityTokenServiceTest.java?rev=1403920&r1=1403919&r2=1403920&view=diff
==============================================================================
---
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/test/java/org/apache/rave/provider/opensocial/service/SecurityTokenServiceTest.java
(original)
+++
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/test/java/org/apache/rave/provider/opensocial/service/SecurityTokenServiceTest.java
Tue Oct 30 23:03:02 2012
@@ -23,6 +23,7 @@ import org.apache.rave.portal.model.*;
import org.apache.rave.portal.model.impl.*;
import org.apache.rave.portal.repository.WidgetRepository;
import org.apache.rave.portal.service.UserService;
+import org.apache.rave.portal.service.WidgetService;
import
org.apache.rave.provider.opensocial.service.impl.EncryptedBlobSecurityTokenService;
import org.apache.shindig.auth.SecurityToken;
import org.apache.shindig.auth.SecurityTokenException;
@@ -44,7 +45,7 @@ import static org.junit.Assert.assertNot
@RunWith(Parameterized.class)
public class SecurityTokenServiceTest {
private UserService userService;
- private WidgetRepository widgetRepository;
+ private WidgetService widgetService;
private SecurityTokenService securityTokenService;
private String encryptionKey;
@@ -82,8 +83,8 @@ public class SecurityTokenServiceTest {
public void setup() throws MalformedURLException {
userService = createMock(UserService.class);
- widgetRepository = createMock(WidgetRepository.class);
- securityTokenService = new
EncryptedBlobSecurityTokenService(userService, widgetRepository, "default",
"default",
+ widgetService = createMock(WidgetService.class);
+ securityTokenService = new
EncryptedBlobSecurityTokenService(userService, widgetService, "default",
"default",
encryptionKey);
validPerson = new UserImpl(VALID_USER_ID, VALID_USER_NAME);
@@ -108,8 +109,8 @@ public class SecurityTokenServiceTest {
expect(userService.getUserById(VALID_USER_ID)).andReturn(validPerson);
replay(userService);
-
expect(widgetRepository.get(validWidget.getId())).andReturn(validWidget);
- replay(widgetRepository);
+
expect(widgetService.getWidget(validWidget.getId())).andReturn(validWidget);
+ replay(widgetService);
SecurityToken securityToken =
securityTokenService.getSecurityToken(validRegionWidget);
validateSecurityToken(securityToken);
@@ -125,8 +126,8 @@ public class SecurityTokenServiceTest {
expect(userService.getUserById(expectedOwnerId)).andReturn(new
UserImpl(expectedOwnerId, expected));
replay(userService);
-
expect(widgetRepository.get(validWidget.getId())).andReturn(validWidget);
- replay(widgetRepository);
+
expect(widgetService.getWidget(validWidget.getId())).andReturn(validWidget);
+ replay(widgetService);
SecurityToken securityToken =
securityTokenService.getSecurityToken(validRegionWidget);
validateSecurityToken(securityToken, expected);
@@ -138,8 +139,8 @@ public class SecurityTokenServiceTest {
expect(userService.getUserById(VALID_USER_ID)).andReturn(validPerson);
replay(userService);
-
expect(widgetRepository.get(validWidget.getId())).andReturn(validWidget);
- replay(widgetRepository);
+
expect(widgetService.getWidget(validWidget.getId())).andReturn(validWidget);
+ replay(widgetService);
String token =
securityTokenService.getEncryptedSecurityToken(validRegionWidget);
assertNotNull(token);
@@ -151,8 +152,8 @@ public class SecurityTokenServiceTest {
expect(userService.getUserById(VALID_USER_ID)).andReturn(validPerson);
replay(userService);
-
expect(widgetRepository.get(validWidget.getId())).andReturn(validWidget);
- replay(widgetRepository);
+
expect(widgetService.getWidget(validWidget.getId())).andReturn(validWidget);
+ replay(widgetService);
String encryptedToken =
securityTokenService.getEncryptedSecurityToken(validRegionWidget);
assertNotNull(encryptedToken);
@@ -168,9 +169,9 @@ public class SecurityTokenServiceTest {
expect(userService.getUserById(VALID_USER_ID)).andReturn(validPerson).anyTimes();
replay(userService);
-
expect(widgetRepository.get(validWidget.getId())).andReturn(validWidget);
-
expect(widgetRepository.get(bogusWidget.getId())).andReturn(bogusWidget);
- replay(widgetRepository);
+
expect(widgetService.getWidget(validWidget.getId())).andReturn(validWidget);
+
expect(widgetService.getWidget(bogusWidget.getId())).andReturn(bogusWidget);
+ replay(widgetService);
String encryptedToken =
securityTokenService.getEncryptedSecurityToken(validRegionWidget);
assertNotNull(encryptedToken);
Modified:
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/test/java/org/apache/rave/provider/opensocial/web/renderer/OpenSocialWidgetRendererTest.java
URL:
http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/test/java/org/apache/rave/provider/opensocial/web/renderer/OpenSocialWidgetRendererTest.java?rev=1403920&r1=1403919&r2=1403920&view=diff
==============================================================================
---
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/test/java/org/apache/rave/provider/opensocial/web/renderer/OpenSocialWidgetRendererTest.java
(original)
+++
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/test/java/org/apache/rave/provider/opensocial/web/renderer/OpenSocialWidgetRendererTest.java
Tue Oct 30 23:03:02 2012
@@ -23,6 +23,7 @@ import org.apache.rave.exception.NotSupp
import org.apache.rave.portal.model.*;
import org.apache.rave.portal.model.impl.*;
import org.apache.rave.portal.repository.WidgetRepository;
+import org.apache.rave.portal.service.WidgetService;
import org.apache.rave.portal.web.renderer.RenderScope;
import org.apache.rave.portal.web.renderer.Renderer;
import org.apache.rave.portal.web.renderer.ScriptLocation;
@@ -48,7 +49,7 @@ public class OpenSocialWidgetRendererTes
private SecurityTokenService securityTokenService;
private ScriptManager scriptManager;
private Renderer<RegionWidget> renderer;
- private WidgetRepository widgetRepository;
+ private WidgetService widgetService;
private static final String VALID_GADGET_URL =
"http://www.example.com/gadget.xml";
private static final String VALID_METADATA = "metadata";
@@ -61,11 +62,11 @@ public class OpenSocialWidgetRendererTes
@Before
public void setup() {
renderContext = new RenderContext();
- widgetRepository = createMock(WidgetRepository.class);
+ widgetService = createMock(WidgetService.class);
scriptManager = createStrictMock(ScriptManager.class);
openSocialService = createNiceMock(OpenSocialService.class);
securityTokenService = createNiceMock(SecurityTokenService.class);
- renderer = new OpenSocialWidgetRenderer(openSocialService,
securityTokenService, scriptManager, widgetRepository);
+ renderer = new OpenSocialWidgetRenderer(openSocialService,
securityTokenService, scriptManager, widgetService);
}
@Test
@@ -99,9 +100,9 @@ public class OpenSocialWidgetRendererTes
w.setType(Constants.WIDGET_TYPE);
w.setUrl(VALID_GADGET_URL);
- expect(widgetRepository.get(w.getId())).andReturn(w);
- expect(widgetRepository.get(w.getId())).andReturn(w);
- replay(widgetRepository);
+ expect(widgetService.getWidget(w.getId())).andReturn(w);
+ expect(widgetService.getWidget(w.getId())).andReturn(w);
+ replay(widgetService);
Region region = new RegionImpl(REGION_ID);
region.setPage(subPage);
@@ -156,9 +157,9 @@ public class OpenSocialWidgetRendererTes
WidgetImpl w = new WidgetImpl(WIDGET_ID);
w.setType(Constants.WIDGET_TYPE);
- expect(widgetRepository.get(w.getId())).andReturn(w);
- expect(widgetRepository.get(w.getId())).andReturn(w);
- replay(widgetRepository);
+ expect(widgetService.getWidget(w.getId())).andReturn(w);
+ expect(widgetService.getWidget(w.getId())).andReturn(w);
+ replay(widgetService);
Region region = new RegionImpl(REGION_ID);
region.setPage(page);
@@ -193,8 +194,8 @@ public class OpenSocialWidgetRendererTes
w.setType("NONE");
w.setUrl("http://www.example.com/gadget.xml");
- expect(widgetRepository.get(w.getId())).andReturn(w);
- replay(widgetRepository);
+ expect(widgetService.getWidget(w.getId())).andReturn(w);
+ replay(widgetService);
RegionWidget rw = new RegionWidgetImpl("1");
rw.setWidgetId(w.getId());