You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rave.apache.org by mf...@apache.org on 2012/06/26 20:19:38 UTC

svn commit: r1354148 [8/9] - in /rave/trunk: ./ rave-components/ rave-components/rave-commons/ rave-components/rave-commons/src/main/java/org/apache/rave/model/ rave-components/rave-commons/src/main/java/org/apache/rave/persistence/jpa/ rave-components...

Modified: rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/controller/util/CategoryEditorTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/controller/util/CategoryEditorTest.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/controller/util/CategoryEditorTest.java (original)
+++ rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/controller/util/CategoryEditorTest.java Tue Jun 26 18:18:57 2012
@@ -19,34 +19,33 @@
 package org.apache.rave.portal.web.controller.util;
 
 import org.apache.rave.portal.model.Category;
+import org.apache.rave.portal.model.impl.CategoryImpl;
 import org.apache.rave.portal.service.CategoryService;
 import org.junit.Before;
 import org.junit.Test;
 
-import java.awt.*;
-
+import static org.easymock.EasyMock.*;
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.CoreMatchers.nullValue;
 import static org.junit.Assert.assertThat;
-import static org.easymock.EasyMock.*;
 
 public class CategoryEditorTest {
     private CategoryEditor categoryEditor;
     private CategoryService categoryService;
-    private final Long CATEGORY_ID = 333L;    
+    private final Long CATEGORY_ID = 333L;
     private final String CATEGORY_TEXT = "category1";
     private Category validCategory;
-         
+
     @Before
     public void setUp() {
         categoryService = createMock(CategoryService.class);
         categoryEditor = new CategoryEditor(categoryService);
 
-        validCategory = new Category();
-        validCategory.setEntityId(CATEGORY_ID);
+        validCategory = new CategoryImpl();
+        validCategory.setId(CATEGORY_ID);
         validCategory.setText(CATEGORY_TEXT);
     }
-    
+
     @Test
     public void setAsText() {
         expect(categoryService.get(CATEGORY_ID)).andReturn(validCategory);
@@ -54,16 +53,16 @@ public class CategoryEditorTest {
         categoryEditor.setAsText(String.valueOf(CATEGORY_ID));
         verify(categoryService);
     }
-    
+
     @Test
     public void getAsText_validCategory() {
-        categoryEditor.setValue(validCategory);        
-        assertThat(categoryEditor.getAsText(), is(validCategory.getEntityId().toString()));  
+        categoryEditor.setValue(validCategory);
+        assertThat(categoryEditor.getAsText(), is(validCategory.getId().toString()));
     }
 
     @Test
     public void getAsText_nullCategory() {
         categoryEditor.setValue(null);
         assertThat(categoryEditor.getAsText(), is(nullValue(String.class)));
-    }    
+    }
 }
\ No newline at end of file

Modified: rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/model/PortalPreferenceFormTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/model/PortalPreferenceFormTest.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/model/PortalPreferenceFormTest.java (original)
+++ rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/model/PortalPreferenceFormTest.java Tue Jun 26 18:18:57 2012
@@ -20,6 +20,7 @@
 package org.apache.rave.portal.web.model;
 
 import org.apache.rave.portal.model.PortalPreference;
+import org.apache.rave.portal.model.impl.PortalPreferenceImpl;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -37,11 +38,11 @@ public class PortalPreferenceFormTest {
 
     @Before
     public void setUp() throws Exception {
-        PortalPreference titlePref = new PortalPreference(TITLE_SUFFIX, "Test portal");
+        PortalPreference titlePref = new PortalPreferenceImpl(TITLE_SUFFIX, "Test portal");
         preferenceMap.put(TITLE_SUFFIX, titlePref);
-        PortalPreference pageSizePref = new PortalPreference(PAGE_SIZE, "20");
+        PortalPreference pageSizePref = new PortalPreferenceImpl(PAGE_SIZE, "20");
         preferenceMap.put(PAGE_SIZE, pageSizePref);
-        PortalPreference javaScriptDebugMode = new PortalPreference(JAVASCRIPT_DEBUG_MODE, "0");
+        PortalPreference javaScriptDebugMode = new PortalPreferenceImpl(JAVASCRIPT_DEBUG_MODE, "0");
         preferenceMap.put(JAVASCRIPT_DEBUG_MODE, javaScriptDebugMode);
     }
 

Modified: rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/security/LdapUserDetailsContextMapperTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/security/LdapUserDetailsContextMapperTest.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/security/LdapUserDetailsContextMapperTest.java (original)
+++ rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/security/LdapUserDetailsContextMapperTest.java Tue Jun 26 18:18:57 2012
@@ -20,6 +20,7 @@
 package org.apache.rave.portal.web.security;
 
 import org.apache.rave.portal.model.User;
+import org.apache.rave.portal.model.impl.UserImpl;
 import org.apache.rave.portal.service.NewAccountService;
 import org.apache.rave.portal.service.UserService;
 import org.junit.Before;
@@ -31,14 +32,8 @@ import org.springframework.security.core
 
 import java.util.Collections;
 
-import static junit.framework.Assert.assertEquals;
-import static junit.framework.Assert.assertFalse;
-import static junit.framework.Assert.assertTrue;
-import static org.easymock.EasyMock.createMock;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.expectLastCall;
-import static org.easymock.EasyMock.replay;
-import static org.easymock.EasyMock.verify;
+import static junit.framework.Assert.*;
+import static org.easymock.EasyMock.*;
 
 /**
  * Test class for {@link LdapUserDetailsContextMapper}
@@ -64,7 +59,7 @@ public class LdapUserDetailsContextMappe
         DirContextOperations ctx = createMock(DirContextOperations.class);
 
         final String username = "johnldap";
-        User user = new User(123L, username);
+        User user = new UserImpl(123L, username);
 
         expect(userService.getUserByUsername(username)).andReturn(null).once();
         expect(ctx.attributeExists(MAIL_ATTRIBUTE_NAME)).andReturn(true);
@@ -88,7 +83,7 @@ public class LdapUserDetailsContextMappe
         DirContextOperations ctx = createMock(DirContextOperations.class);
 
         final String username = "johnldap";
-        User user = new User(123L, username);
+        User user = new UserImpl(123L, username);
 
         expect(userService.getUserByUsername(username)).andReturn(null).once();
         expect(ctx.attributeExists(MAIL_ATTRIBUTE_NAME)).andReturn(true);
@@ -157,7 +152,7 @@ public class LdapUserDetailsContextMappe
         DirContextOperations ctx = createMock(DirContextOperations.class);
 
         final String username = "johnldap";
-        User user = new User(123L, username);
+        User user = new UserImpl(123L, username);
 
         expect(userService.getUserByUsername(username)).andReturn(user);
         expectLastCall();
@@ -173,7 +168,7 @@ public class LdapUserDetailsContextMappe
 
     @Test
     public void testMapUserToContext() throws Exception {
-        User user = new User();
+        User user = new UserImpl();
         DirContextAdapter adapter = new DirContextAdapter();
 
         contextMapper.mapUserToContext(user, adapter);

Modified: rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/tag/RegionWidgetTagTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/tag/RegionWidgetTagTest.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/tag/RegionWidgetTagTest.java (original)
+++ rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/tag/RegionWidgetTagTest.java Tue Jun 26 18:18:57 2012
@@ -19,10 +19,11 @@
 
 package org.apache.rave.portal.web.tag;
 
-import org.apache.commons.lang.StringEscapeUtils;
 import org.apache.rave.portal.model.Region;
 import org.apache.rave.portal.model.RegionWidget;
-import org.apache.rave.portal.model.Widget;
+import org.apache.rave.portal.model.impl.RegionImpl;
+import org.apache.rave.portal.model.impl.RegionWidgetImpl;
+import org.apache.rave.portal.model.impl.WidgetImpl;
 import org.apache.rave.portal.web.renderer.RenderScope;
 import org.apache.rave.portal.web.renderer.RenderService;
 import org.apache.rave.portal.web.renderer.ScriptLocation;
@@ -82,8 +83,8 @@ public class RegionWidgetTagTest {
 
     @Test
     public void doStartTag_valid() throws IOException, JspException {
-        RegionWidget regionWidget = new RegionWidget();
-        Widget widget = new Widget();
+        RegionWidget regionWidget = new RegionWidgetImpl();
+        WidgetImpl widget = new WidgetImpl();
         regionWidget.setWidget(widget);
         widget.setType(WIDGET_TYPE);
 
@@ -118,8 +119,8 @@ public class RegionWidgetTagTest {
     @Test(expected = JspException.class)
     public void doStartTag_IOException() throws JspException, IOException {
 
-        RegionWidget regionWidget = new RegionWidget();
-        Widget widget = new Widget();
+        RegionWidget regionWidget = new RegionWidgetImpl();
+        WidgetImpl widget = new WidgetImpl();
         regionWidget.setWidget(widget);
         widget.setType("INVALID");
 
@@ -144,9 +145,9 @@ public class RegionWidgetTagTest {
     public void doStartTag_unsupportedWidget() throws JspException {
         replay(pageContext);
 
-        RegionWidget regionWidget = new RegionWidget();
-        Region region = new Region(25L);
-        Widget widget = new Widget();
+        RegionWidget regionWidget = new RegionWidgetImpl();
+        Region region = new RegionImpl(25L);
+        WidgetImpl widget = new WidgetImpl();
         regionWidget.setWidget(widget);
         regionWidget.setRegion(region);
         widget.setType("INVALID");
@@ -165,16 +166,16 @@ public class RegionWidgetTagTest {
     public void doStartTag_disabledWidget() throws IOException, JspException {
         final String DISABLED_WIDGET_MESSAGE = "THIS IS DISABLED";
 
-        Widget widget = new Widget();
-        widget.setEntityId(8L);
+        WidgetImpl widget = new WidgetImpl();
+        widget.setId(8L);
         widget.setType(WIDGET_TYPE);
         widget.setDisableRendering(true);
         widget.setDisableRenderingMessage(DISABLED_WIDGET_MESSAGE);
 
-        RegionWidget regionWidget = new RegionWidget();
-        regionWidget.setEntityId(99L);
+        RegionWidget regionWidget = new RegionWidgetImpl();
+        regionWidget.setId(99L);
         regionWidget.setWidget(widget);
-        regionWidget.setRegion(new Region(2L));
+        regionWidget.setRegion(new RegionImpl(2L));
 
         Set<String> strings = new HashSet<String>();
         strings.add(WIDGET_TYPE);
@@ -196,7 +197,7 @@ public class RegionWidgetTagTest {
 
     @Test
     public void getRegionWidget() throws IOException, JspException {
-        RegionWidget regionWidget = new RegionWidget();
+        RegionWidget regionWidget = new RegionWidgetImpl();
         tag.setRegionWidget(regionWidget);
         assertThat(tag.getRegionWidget(), sameInstance(regionWidget));
     }

Modified: rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/NewAccountValidatorTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/NewAccountValidatorTest.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/NewAccountValidatorTest.java (original)
+++ rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/NewAccountValidatorTest.java Tue Jun 26 18:18:57 2012
@@ -19,21 +19,17 @@
 
 package org.apache.rave.portal.web.validator;
 
-import static junit.framework.Assert.assertEquals;
-import static junit.framework.Assert.assertFalse;
-import static junit.framework.Assert.assertNotNull;
-import static junit.framework.Assert.assertTrue;
-import static org.easymock.EasyMock.createMock;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.replay;
-
 import org.apache.rave.portal.model.User;
 import org.apache.rave.portal.service.UserService;
+import org.apache.rave.portal.web.model.UserForm;
 import org.junit.Before;
 import org.junit.Test;
 import org.springframework.validation.BindException;
 import org.springframework.validation.Errors;
 
+import static junit.framework.Assert.*;
+import static org.easymock.EasyMock.*;
+
 /**
  * Test class for {@link NewAccountValidator}
  */
@@ -54,12 +50,12 @@ public class NewAccountValidatorTest {
     @Test
     public void testSupports() throws Exception {
         assertTrue("Can validate org.apache.rave.portal.model.User",
-                newAccountValidator.supports(User.class));
+                newAccountValidator.supports(UserForm.class));
     }
 
     @Test
     public void testValidate() throws Exception {
-        User user = new User();
+        UserForm user = new UserForm();
         user.setUsername(VALID_NAME);
         user.setPassword(VALID_PASSWORD);
         user.setConfirmPassword(VALID_PASSWORD);
@@ -78,7 +74,7 @@ public class NewAccountValidatorTest {
 
     @Test
     public void testValidationFailsOnEmptyUser() throws Exception {
-        User user = new User();
+        UserForm user = new UserForm();
         Errors errors = new BindException(user, NEW_USER);
         expect(mockUserService.getUserByUsername("")).andReturn(null);
         replay(mockUserService);
@@ -96,7 +92,7 @@ public class NewAccountValidatorTest {
 
     @Test
     public void testValidationFailsOnExistingUser() throws Exception {
-        User user = new User();
+        UserForm user = new UserForm();
         user.setUsername("ExistingUser");
         user.setPassword(VALID_PASSWORD);
         user.setConfirmPassword(VALID_PASSWORD);
@@ -117,7 +113,7 @@ public class NewAccountValidatorTest {
 
     @Test
     public void testValidationFailsOnExistingEmail() throws Exception {
-        User user = new User();
+        UserForm user = new UserForm();
         user.setUsername(VALID_NAME);
         user.setPassword(VALID_PASSWORD);
         user.setConfirmPassword(VALID_PASSWORD);
@@ -139,7 +135,7 @@ public class NewAccountValidatorTest {
 
     @Test
     public void testValidationFailsOnShortUserName() throws Exception {
-        User user = new User();
+        UserForm user = new UserForm();
         user.setUsername("A");
         user.setPassword(VALID_PASSWORD);
         user.setConfirmPassword(VALID_PASSWORD);
@@ -158,7 +154,7 @@ public class NewAccountValidatorTest {
 
     @Test
     public void testValidationFailsOnIllegalUsername() throws Exception {
-        User user = new User();
+        UserForm user = new UserForm();
         final String badUsername = "x'; DROP TABLE members; --";
         user.setUsername(badUsername);
         user.setPassword(VALID_PASSWORD);
@@ -178,7 +174,7 @@ public class NewAccountValidatorTest {
 
     @Test
     public void testValidationFailsOnShortPassword() throws Exception {
-        User user = new User();
+        UserForm user = new UserForm();
         user.setUsername(VALID_NAME);
         user.setPassword("123");
         user.setConfirmPassword("123");
@@ -197,7 +193,7 @@ public class NewAccountValidatorTest {
 
     @Test
     public void testValidationFailsOnNonMatchingPassword() throws Exception {
-        User user = new User();
+        UserForm user = new UserForm();
         user.setUsername(VALID_NAME);
         user.setPassword(VALID_PASSWORD);
         user.setConfirmPassword("doesnotmatch");

Modified: rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/NewWidgetValidatorTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/NewWidgetValidatorTest.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/NewWidgetValidatorTest.java (original)
+++ rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/NewWidgetValidatorTest.java Tue Jun 26 18:18:57 2012
@@ -20,19 +20,15 @@
 package org.apache.rave.portal.web.validator;
 
 import org.apache.rave.portal.model.Widget;
+import org.apache.rave.portal.model.impl.WidgetImpl;
 import org.apache.rave.portal.service.WidgetService;
 import org.junit.Before;
 import org.junit.Test;
 import org.springframework.validation.BindException;
 import org.springframework.validation.Errors;
 
-import static junit.framework.Assert.assertEquals;
-import static junit.framework.Assert.assertFalse;
-import static junit.framework.Assert.assertNotNull;
-import static org.easymock.EasyMock.createMock;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.replay;
-import static org.easymock.EasyMock.verify;
+import static junit.framework.Assert.*;
+import static org.easymock.EasyMock.*;
 
 /**
  * Test class for {@link NewWidgetValidator}
@@ -50,7 +46,7 @@ public class NewWidgetValidatorTest {
 
     @Test
     public void testValidateValidFormData() throws Exception {
-        Widget widget = new Widget();
+        Widget widget = new WidgetImpl();
         widget.setTitle(VALID_TITLE);
         widget.setUrl(VALID_URL);
         widget.setType(VALID_TYPE);
@@ -67,7 +63,7 @@ public class NewWidgetValidatorTest {
 
     @Test
     public void testValidationFailsOnEmptyValues() {
-        Widget widget = new Widget();
+        Widget widget = new WidgetImpl();
         Errors errors = new BindException(widget, WIDGET);
 
         widgetValidator.validate(widget, errors);
@@ -79,14 +75,14 @@ public class NewWidgetValidatorTest {
     public void testValidationFailsOnDuplicateUrl() {
         final String existingUrl = "http://example.com/existing_widget.xml";
 
-        Widget widget = new Widget();
-        widget.setEntityId(123L);
+        WidgetImpl widget = new WidgetImpl();
+        widget.setId(123L);
         widget.setTitle(VALID_TITLE);
         widget.setType(VALID_TYPE);
         widget.setDescription(VALID_DESCRIPTION);
         widget.setUrl(existingUrl);
 
-        Widget newWidget = new Widget();
+        Widget newWidget = new WidgetImpl();
         newWidget.setTitle(VALID_TITLE);
         newWidget.setType(VALID_TYPE);
         newWidget.setDescription(VALID_DESCRIPTION);
@@ -104,7 +100,7 @@ public class NewWidgetValidatorTest {
 
     @Test
     public void testValidationFailsOnInvalidUrl() {
-        Widget widget = new Widget();
+        Widget widget = new WidgetImpl();
         widget.setTitle(VALID_TITLE);
         widget.setType(VALID_TYPE);
         widget.setUrl("http:/this.is/invalid?url=true&reject=true");

Modified: rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/PortalPreferenceFormValidatorTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/PortalPreferenceFormValidatorTest.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/PortalPreferenceFormValidatorTest.java (original)
+++ rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/PortalPreferenceFormValidatorTest.java Tue Jun 26 18:18:57 2012
@@ -20,6 +20,7 @@
 package org.apache.rave.portal.web.validator;
 
 import org.apache.rave.portal.model.PortalPreference;
+import org.apache.rave.portal.model.impl.PortalPreferenceImpl;
 import org.apache.rave.portal.web.model.PortalPreferenceForm;
 import org.junit.Before;
 import org.junit.Test;
@@ -29,10 +30,7 @@ import org.springframework.validation.Er
 import java.util.HashMap;
 import java.util.Map;
 
-import static junit.framework.Assert.assertEquals;
-import static junit.framework.Assert.assertFalse;
-import static junit.framework.Assert.assertNotNull;
-import static junit.framework.Assert.assertTrue;
+import static junit.framework.Assert.*;
 import static org.apache.rave.portal.web.util.PortalPreferenceKeys.PAGE_SIZE;
 import static org.apache.rave.portal.web.util.PortalPreferenceKeys.TITLE_SUFFIX;
 
@@ -55,8 +53,8 @@ public class PortalPreferenceFormValidat
     @Test
     public void testValidate_Valid() throws Exception {
         Map<String, PortalPreference> preferenceMap = new HashMap<String, PortalPreference>();
-        preferenceMap.put(TITLE_SUFFIX, new PortalPreference(TITLE_SUFFIX, "- Rave unit test"));
-        preferenceMap.put(PAGE_SIZE, new PortalPreference(PAGE_SIZE, "10"));
+        preferenceMap.put(TITLE_SUFFIX, new PortalPreferenceImpl(TITLE_SUFFIX, "- Rave unit test"));
+        preferenceMap.put(PAGE_SIZE, new PortalPreferenceImpl(PAGE_SIZE, "10"));
         PortalPreferenceForm form = new PortalPreferenceForm(preferenceMap);
         Errors errors = new BindException(form, "form");
         validator.validate(form, errors);
@@ -80,7 +78,7 @@ public class PortalPreferenceFormValidat
     @Test
     public void testValidate_InvalidPageSize() throws Exception {
         Map<String, PortalPreference> preferenceMap = new HashMap<String, PortalPreference>();
-        preferenceMap.put(PAGE_SIZE, new PortalPreference(PAGE_SIZE, "10.5"));
+        preferenceMap.put(PAGE_SIZE, new PortalPreferenceImpl(PAGE_SIZE, "10.5"));
         PortalPreferenceForm form = new PortalPreferenceForm(preferenceMap);
         Errors errors = new BindException(form, "form");
         validator.validate(form, errors);

Modified: rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/UpdateWidgetValidatorTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/UpdateWidgetValidatorTest.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/UpdateWidgetValidatorTest.java (original)
+++ rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/UpdateWidgetValidatorTest.java Tue Jun 26 18:18:57 2012
@@ -20,19 +20,15 @@
 package org.apache.rave.portal.web.validator;
 
 import org.apache.rave.portal.model.Widget;
+import org.apache.rave.portal.model.impl.WidgetImpl;
 import org.apache.rave.portal.service.WidgetService;
 import org.junit.Before;
 import org.junit.Test;
 import org.springframework.validation.BindException;
 import org.springframework.validation.Errors;
 
-import static junit.framework.Assert.assertEquals;
-import static junit.framework.Assert.assertFalse;
-import static junit.framework.Assert.assertNotNull;
-import static org.easymock.EasyMock.createMock;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.replay;
-import static org.easymock.EasyMock.verify;
+import static junit.framework.Assert.*;
+import static org.easymock.EasyMock.*;
 
 /**
  * Test class for {@link org.apache.rave.portal.web.validator.UpdateWidgetValidator}
@@ -50,8 +46,8 @@ public class UpdateWidgetValidatorTest {
 
     @Test
     public void testValidateValidFormData() throws Exception {
-        Widget widget = new Widget();
-        widget.setEntityId(123L);
+        WidgetImpl widget = new WidgetImpl();
+        widget.setId(123L);
         widget.setTitle(VALID_TITLE);
         widget.setUrl(VALID_URL);
         widget.setType(VALID_TYPE);
@@ -68,7 +64,7 @@ public class UpdateWidgetValidatorTest {
 
     @Test
     public void testValidationFailsOnEmptyValues() {
-        Widget widget = new Widget();
+        Widget widget = new WidgetImpl();
         Errors errors = new BindException(widget, WIDGET);
 
         widgetValidator.validate(widget, errors);
@@ -80,14 +76,14 @@ public class UpdateWidgetValidatorTest {
     public void testValidationFailsOnDuplicateUrl() {
         final String existingUrl = "http://example.com/existing_widget.xml";
 
-        Widget widget = new Widget();
-        widget.setEntityId(123L);
+        WidgetImpl widget = new WidgetImpl();
+        widget.setId(123L);
         widget.setTitle(VALID_TITLE);
         widget.setType(VALID_TYPE);
         widget.setDescription(VALID_DESCRIPTION);
         widget.setUrl(existingUrl);
 
-        Widget newWidget = new Widget();
+        Widget newWidget = new WidgetImpl();
         newWidget.setTitle(VALID_TITLE);
         newWidget.setType(VALID_TYPE);
         newWidget.setDescription(VALID_DESCRIPTION);
@@ -105,7 +101,7 @@ public class UpdateWidgetValidatorTest {
 
     @Test
     public void testValidationFailsOnInvalidUrl() {
-        Widget widget = new Widget();
+        Widget widget = new WidgetImpl();
         widget.setTitle(VALID_TITLE);
         widget.setType(VALID_TYPE);
         widget.setDescription(VALID_DESCRIPTION);

Modified: rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/UserProfileValidatorTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/UserProfileValidatorTest.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/UserProfileValidatorTest.java (original)
+++ rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/UserProfileValidatorTest.java Tue Jun 26 18:18:57 2012
@@ -20,15 +20,14 @@
 package org.apache.rave.portal.web.validator;
 
 import org.apache.rave.portal.model.User;
+import org.apache.rave.portal.model.impl.UserImpl;
 import org.apache.rave.portal.service.UserService;
 import org.junit.Before;
 import org.junit.Test;
 import org.springframework.validation.BindException;
 import org.springframework.validation.Errors;
 
-import static junit.framework.Assert.assertFalse;
-import static junit.framework.Assert.assertNotNull;
-import static junit.framework.Assert.assertTrue;
+import static junit.framework.Assert.*;
 import static org.easymock.EasyMock.createMock;
 
 /**
@@ -46,12 +45,12 @@ public class UserProfileValidatorTest {
 
     @Test
     public void testSupports() throws Exception {
-        assertTrue("Can validate org.apache.rave.portal.model.User", validator.supports(User.class));
+        assertTrue("Can validate org.apache.rave.portal.model.User", validator.supports(UserImpl.class));
     }
 
     @Test
     public void testValidate() throws Exception {
-        User user = new User();
+        User user = new UserImpl();
         user.setUsername(VALID_NAME);
         user.setPassword(VALID_PASSWORD);
         user.setConfirmPassword(VALID_PASSWORD);
@@ -65,7 +64,7 @@ public class UserProfileValidatorTest {
 
     @Test
     public void testValidateFailsOnEmptyPassword() throws Exception {
-        User user = new User();
+        User user = new UserImpl();
         user.setUsername(VALID_NAME);
         user.setEmail(VALID_EMAIL);
 
@@ -79,7 +78,7 @@ public class UserProfileValidatorTest {
 
     @Test
     public void testValidateFailsOnShortPassword() throws Exception {
-        User user = new User();
+        User user = new UserImpl();
         user.setUsername(VALID_NAME);
         user.setPassword("123");
         user.setPassword("123");
@@ -94,7 +93,7 @@ public class UserProfileValidatorTest {
 
     @Test
     public void testValidateFailsOnPasswordMismatch() throws Exception {
-        User user = new User();
+        User user = new UserImpl();
         user.setUsername(VALID_NAME);
         user.setPassword(VALID_PASSWORD);
         user.setConfirmPassword("DoesNotMatch");

Modified: rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/WidgetValidatorTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/WidgetValidatorTest.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/WidgetValidatorTest.java (original)
+++ rave/trunk/rave-components/rave-web/src/test/java/org/apache/rave/portal/web/validator/WidgetValidatorTest.java Tue Jun 26 18:18:57 2012
@@ -19,16 +19,17 @@
 
 package org.apache.rave.portal.web.validator;
 
-import static junit.framework.Assert.assertFalse;
-import static junit.framework.Assert.assertTrue;
-
 import org.apache.commons.validator.routines.RegexValidator;
 import org.apache.commons.validator.routines.UrlValidator;
 import org.apache.rave.portal.model.Widget;
+import org.apache.rave.portal.model.impl.WidgetImpl;
 import org.junit.Before;
 import org.junit.Test;
 import org.springframework.validation.Errors;
 
+import static junit.framework.Assert.assertFalse;
+import static junit.framework.Assert.assertTrue;
+
 /**
  * Test for {@link WidgetValidator}
  */
@@ -43,7 +44,7 @@ public class WidgetValidatorTest {
 
     @Test
     public void testSupports() throws Exception {
-        assertTrue("Supports org.apache.rave.portal.model.Widget", widgetValidator.supports(Widget.class));
+        assertTrue("Supports org.apache.rave.portal.model.Widget", widgetValidator.supports(WidgetImpl.class));
     }
 
   /*

Modified: rave/trunk/rave-demo-gadgets/pom.xml
URL: http://svn.apache.org/viewvc/rave/trunk/rave-demo-gadgets/pom.xml?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-demo-gadgets/pom.xml (original)
+++ rave/trunk/rave-demo-gadgets/pom.xml Tue Jun 26 18:18:57 2012
@@ -50,4 +50,4 @@
         </plugins>
 
     </build>
-</project>
\ No newline at end of file
+</project>

Modified: rave/trunk/rave-portal-dependencies/pom.xml
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-dependencies/pom.xml?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-dependencies/pom.xml (original)
+++ rave/trunk/rave-portal-dependencies/pom.xml Tue Jun 26 18:18:57 2012
@@ -45,6 +45,10 @@
         </dependency>
         <dependency>
             <groupId>org.apache.rave</groupId>
+            <artifactId>rave-jpa</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.rave</groupId>
             <artifactId>rave-web</artifactId>
         </dependency>
         <dependency>

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/applicationContext.xml
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/applicationContext.xml?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/applicationContext.xml (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/applicationContext.xml Tue Jun 26 18:18:57 2012
@@ -25,6 +25,7 @@
                            http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd">
 
     <import resource="classpath*:org/apache/rave/core-applicationContext.xml"/>
+    <import resource="classpath*:org/apache/rave/jpa-applicationContext.xml"/>
     <import resource="classpath*:org/apache/rave/web-applicationContext.xml"/>
     <import resource="classpath*:org/apache/rave/opensocial-provider-applicationContext.xml"/>
     <import resource="classpath*:org/apache/rave/w3c-provider-applicationContext.xml"/>

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/db/initial_data.sql
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/db/initial_data.sql?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/db/initial_data.sql (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/db/initial_data.sql Tue Jun 26 18:18:57 2012
@@ -190,17 +190,17 @@ UPDATE RAVE_PORTAL_SEQUENCES SET seq_cou
 -- user association data --
 set @next_person_association = (SELECT seq_count FROM RAVE_PORTAL_SEQUENCES WHERE seq_name = @person_association_seq);
 INSERT INTO person_association(entity_id, follower_id, followed_id)
-VALUES (@next_person_association, @person_id_1, @person_id_2);
+VALUES (@next_person_association, @user_id_1, @user_id_2);
 UPDATE RAVE_PORTAL_SEQUENCES SET seq_count = (seq_count + 1) WHERE seq_name = @person_association_seq;
 
 set @next_person_association = (SELECT seq_count FROM RAVE_PORTAL_SEQUENCES WHERE seq_name = @person_association_seq);
 INSERT INTO person_association(entity_id, follower_id, followed_id)
-VALUES (@next_person_association, @person_id_1, @person_id_3);
+VALUES (@next_person_association, @user_id_1, @user_id_3);
 UPDATE RAVE_PORTAL_SEQUENCES SET seq_count = (seq_count + 1) WHERE seq_name = @person_association_seq;
 
 set @next_person_association = (SELECT seq_count FROM RAVE_PORTAL_SEQUENCES WHERE seq_name = @person_association_seq);
 INSERT INTO person_association(entity_id, follower_id, followed_id)
-VALUES (@next_person_association, @person_id_2, @person_id_4);
+VALUES (@next_person_association, @user_id_2, @user_id_4);
 UPDATE RAVE_PORTAL_SEQUENCES SET seq_count = (seq_count + 1) WHERE seq_name = @person_association_seq;
 
 -- end user association data --
@@ -1054,21 +1054,21 @@ values (@user_id_13, @user_authority_id)
 set @next_portal_preference_id = (SELECT seq_count FROM RAVE_PORTAL_SEQUENCES WHERE seq_name = @portal_preference_seq);
 INSERT INTO portal_preference (entity_id, preference_key)
 values (@next_portal_preference_id, 'titleSuffix');
-INSERT INTO portalpreference_values
+INSERT INTO JPAPORTALPREFERENCE_VALUES
 values (@next_portal_preference_id, ' - Rave');
 UPDATE RAVE_PORTAL_SEQUENCES SET seq_count = (seq_count + 1) WHERE seq_name = @portal_preference_seq;
 
 set @next_portal_preference_id = (SELECT seq_count FROM RAVE_PORTAL_SEQUENCES WHERE seq_name = @portal_preference_seq);
 INSERT INTO portal_preference (entity_id, preference_key)
 values (@next_portal_preference_id, 'pageSize');
-INSERT INTO portalpreference_values
+INSERT INTO JPAPORTALPREFERENCE_VALUES
 values (@next_portal_preference_id, '10');
 UPDATE RAVE_PORTAL_SEQUENCES SET seq_count = (seq_count + 1) WHERE seq_name = @portal_preference_seq;
 
 set @next_portal_preference_id = (SELECT seq_count FROM RAVE_PORTAL_SEQUENCES WHERE seq_name = @portal_preference_seq);
 INSERT INTO portal_preference (entity_id, preference_key)
 values (@next_portal_preference_id, 'javaScriptDebugMode');
-INSERT INTO portalpreference_values
+INSERT INTO JPAPORTALPREFERENCE_VALUES
 values (@next_portal_preference_id, '1');
 UPDATE RAVE_PORTAL_SEQUENCES SET seq_count = (seq_count + 1) WHERE seq_name = @portal_preference_seq;
 -- end portal preferences

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/dispatcher-servlet.xml
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/dispatcher-servlet.xml?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/dispatcher-servlet.xml (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/dispatcher-servlet.xml Tue Jun 26 18:18:57 2012
@@ -37,7 +37,35 @@
     <context:component-scan base-package="org.apache.rave.portal.web.api"/>
 
     <!-- Configures the @Controller programming model -->
-    <mvc:annotation-driven/>
+    <mvc:annotation-driven>
+        <mvc:message-converters>
+            <bean id="stringHttpMessageConverter" class="org.springframework.http.converter.StringHttpMessageConverter">
+                <property name="supportedMediaTypes">
+                    <list>
+                        <bean class="org.springframework.http.MediaType">
+                            <constructor-arg index="0" value="text"/>
+                            <constructor-arg index="1" value="plain"/>
+                            <constructor-arg index="2" value="UTF-8"/>
+                        </bean>
+                        <bean class="org.springframework.http.MediaType">
+                            <constructor-arg index="0" value="text"/>
+                            <constructor-arg index="1" value="javascript"/>
+                            <constructor-arg index="2" value="UTF-8"/>
+                        </bean>
+                    </list>
+                </property>
+            </bean>
+            <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
+                <property name="objectMapper">
+                    <bean class="org.apache.rave.portal.web.model.MaterializedBeanObjectMapperFactory"/>
+                </property>
+            </bean>
+            <bean primary="true" class="org.springframework.http.converter.xml.MarshallingHttpMessageConverter">
+                <property name="marshaller" ref="xmlMarshaller"/>
+                <property name="unmarshaller" ref="xmlMarshaller"/>
+            </bean>
+        </mvc:message-converters>
+    </mvc:annotation-driven>
     <mvc:interceptors>
         <bean class="org.apache.rave.portal.web.interceptors.CommonModelHandlerInterceptor"/>
         <!--
@@ -49,7 +77,7 @@
             can be used if you need to get more detailed information about
             the device such as manufacturer, model, screen size, etc.
         -->
-        <bean class="org.springframework.mobile.device.DeviceResolverHandlerInterceptor" />
+        <bean class="org.springframework.mobile.device.DeviceResolverHandlerInterceptor"/>
     </mvc:interceptors>
 
     <!-- Forwards requests to the "/" resource to the "page" view -->
@@ -61,9 +89,13 @@
         <property name="suffix" value=".jsp"/>
     </bean>
 
-    <oxm:jaxb2-marshaller id="marshaller">
-        <oxm:class-to-be-bound name="org.apache.rave.portal.model.Page"/>
-        <oxm:class-to-be-bound name="org.apache.rave.portal.model.RegionWidgetPreference"/>
+    <oxm:jaxb2-marshaller id="xmlMarshaller">
+        <oxm:class-to-be-bound name="org.apache.rave.portal.model.JpaUser"/>
+        <oxm:class-to-be-bound name="org.apache.rave.portal.model.JpaPage"/>
+        <oxm:class-to-be-bound name="org.apache.rave.portal.model.JpaRegion"/>
+        <oxm:class-to-be-bound name="org.apache.rave.portal.model.JpaRegionWidget"/>
+        <oxm:class-to-be-bound name="org.apache.rave.portal.model.JpaRegionWidgetPreference"/>
+        <oxm:class-to-be-bound name="org.apache.rave.portal.model.JpaWidget"/>
         <oxm:class-to-be-bound name="org.apache.rave.portal.web.model.RegionWidgetPreferenceListWrapper"/>
     </oxm:jaxb2-marshaller>
 
@@ -86,8 +118,8 @@
                         </list>
                     </property>
                 </bean>
-                <bean class="org.springframework.http.converter.xml.MarshallingHttpMessageConverter"
-                      p:marshaller-ref="marshaller" p:unmarshaller-ref="marshaller"/>
+             <!--   <bean primary="true" class="org.springframework.http.converter.xml.MarshallingHttpMessageConverter"
+                      p:marshaller-ref="xmlMarshaller" p:unmarshaller-ref="xmlMarshaller"/>-->
             </list>
         </property>
     </bean>

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/preferences.jsp
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/preferences.jsp?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/preferences.jsp (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/preferences.jsp Tue Jun 26 18:18:57 2012
@@ -39,7 +39,7 @@
             <h2><fmt:message key="admin.preferences.shorttitle"/></h2>
 
             <spring:url value="/app/admin/preferencedetail/edit" var="detaillink"/>
-            <%--@elvariable id="preferenceMap" type="java.util.Map<java.lang.String, org.apache.rave.portal.model.PortalPreference>"--%>
+                <%--@elvariable id="preferenceMap" type="java.util.Map<java.lang.String, org.apache.rave.portal.model.JpaPortalPreference>"--%>
             <c:choose>
                 <c:when test="${fn:length(preferenceMap) eq 0}">
                     <a class="btn btn-primary" href="<c:out value="${detaillink}"/>"><fmt:message key="admin.preferences.edit"/></a>

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/userdetail.jsp
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/userdetail.jsp?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/userdetail.jsp (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/userdetail.jsp Tue Jun 26 18:18:57 2012
@@ -70,6 +70,7 @@
                         <fieldset>
                             <legend><fmt:message key="admin.userdetail.editdata"/></legend>
                             <input type="hidden" name="token" value="<c:out value="${tokencheck}"/>"/>
+                            <form:hidden path="username" />
                             <div class="control-group">
                                 <label class="control-label" for="email"><fmt:message key="page.general.email"/></label>
                                 <div class="controls"><spring:bind path="email">
@@ -112,7 +113,7 @@
                         </fieldset>
                         <fieldset>
                             <span class="label"><fmt:message key="admin.userdata.authorities"/></span>
-                                <%--@elvariable id="authorities" type="org.apache.rave.portal.model.util.SearchResult<org.apache.rave.portal.model.Authority>"--%>
+                                <%--@elvariable id="authorities" type="org.apache.rave.portal.model.util.SearchResult<org.apache.rave.portal.model.JpaAuthority>"--%>
                             <ul class="checkboxlist">
                                 <form:checkboxes path="authorities" items="${authorities.resultSet}" itemLabel="authority" itemValue="authority" element="li"/>
                             </ul>

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/users.jsp
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/users.jsp?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/users.jsp (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/users.jsp Tue Jun 26 18:18:57 2012
@@ -19,7 +19,7 @@
 <%@ page language="java" trimDirectiveWhitespaces="true" %>
 <%@ include file="/WEB-INF/jsp/includes/taglibs.jsp" %>
 <fmt:setBundle basename="messages"/>
-<%--@elvariable id="searchResult" type="org.apache.rave.portal.model.util.SearchResult<org.apache.rave.portal.model.User>"--%>
+<%--@elvariable id="searchResult" type="org.apache.rave.portal.model.util.SearchResult<org.apache.rave.portal.model.JpaUser>"--%>
 
 <fmt:message key="${pageTitleKey}" var="pagetitle"/>
 <rave:navbar pageTitle="${pagetitle}"/>

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/widgets.jsp
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/widgets.jsp?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/widgets.jsp (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/admin/widgets.jsp Tue Jun 26 18:18:57 2012
@@ -19,7 +19,7 @@
 <%@ page language="java" trimDirectiveWhitespaces="true" %>
 <%@ include file="/WEB-INF/jsp/includes/taglibs.jsp" %>
 <fmt:setBundle basename="messages"/>
-<%--@elvariable id="searchResult" type="org.apache.rave.portal.model.util.SearchResult<org.apache.rave.portal.model.Widget>"--%>
+<%--@elvariable id="searchResult" type="org.apache.rave.portal.model.util.SearchResult<org.apache.rave.portal.model.JpaWidget>"--%>
 <fmt:message key="${pageTitleKey}" var="pagetitle"/>
 <rave:navbar pageTitle="${pagetitle}"/>
 <div class="container-fluid">

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/page.jsp
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/page.jsp?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/page.jsp (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/page.jsp Tue Jun 26 18:18:57 2012
@@ -22,7 +22,7 @@
 <fmt:setBundle basename="messages"/>
 <jsp:useBean id="pages" type="java.util.List<org.apache.rave.portal.model.Page>" scope="request"/>
 <jsp:useBean id="pageUser" type="org.apache.rave.portal.model.PageUser" scope="request"/>
-<jsp:useBean id="pageLayouts" type="java.util.List<org.apache.rave.portal.model.PageLayout>" scope="request"/>
+<jsp:useBean id="pageLayouts" type="java.util.List<org.apache.rave.portal.model.JpaPageLayout>" scope="request"/>
 <%--@elvariable id="page" type="org.apache.rave.portal.model.Page"--%>
 <sec:authentication property="principal.username" var="principleUsername" scope="request"/>
 <sec:authentication property="principal.displayName" var="displayName" scope="request"/>

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/personProfile.jsp
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/personProfile.jsp?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/personProfile.jsp (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/personProfile.jsp Tue Jun 26 18:18:57 2012
@@ -24,7 +24,7 @@
 <%@ page errorPage="/WEB-INF/jsp/views/error.jsp" %>
 <%@ include file="/WEB-INF/jsp/includes/taglibs.jsp" %>
 <fmt:setBundle basename="messages"/>
-<jsp:useBean id="userProfile" type="org.apache.rave.portal.model.User" scope="request"/>
+<jsp:useBean id="userProfile" type="org.apache.rave.portal.model.JpaUser" scope="request"/>
 
 <!-- get the display name of user -->
 <fmt:message key="page.personProfile.title" var="pageTitle">

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/store.jsp
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/store.jsp?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/store.jsp (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/store.jsp Tue Jun 26 18:18:57 2012
@@ -77,7 +77,7 @@
 
                 </c:if>
                 <ul class="storeItems">
-                        <%--@elvariable id="widget" type="org.apache.rave.portal.model.Widget"--%>
+                        <%--@elvariable id="widget" type="org.apache.rave.portal.model.JpaWidget"--%>
                     <c:forEach var="widget" items="${widgets.resultSet}">
                         <%--@elvariable id="widgetsStatistics" type="org.apache.rave.portal.model.util.WidgetStatistics"--%>
                         <c:set var="widgetStatistics" value="${widgetsStatistics[widget.entityId]}"/>

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/userProfile.jsp
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/userProfile.jsp?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/userProfile.jsp (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/userProfile.jsp Tue Jun 26 18:18:57 2012
@@ -19,7 +19,7 @@
 <%@ page language="java" trimDirectiveWhitespaces="true" %>
 <%@ include file="/WEB-INF/jsp/includes/taglibs.jsp" %>
 <fmt:setBundle basename="messages"/>
-<jsp:useBean id="userProfile" type="org.apache.rave.portal.model.User" scope="request"/>
+<jsp:useBean id="userProfile" type="org.apache.rave.portal.model.JpaUser" scope="request"/>
 <div id="content">
     <h1>${pagetitle}</h1>
     <form:form id="userProfileForm" commandName="userProfile" action="updateUserProfile" method="POST">

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/widget.jsp
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/widget.jsp?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/widget.jsp (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/jsp/views/widget.jsp Tue Jun 26 18:18:57 2012
@@ -201,7 +201,7 @@
                                         </span>
                                         <c:if test="${userProfile.entityId eq comment.user.entityId}">
                                             <button id="comment-delete-${comment.entityId}" class="btn btn-danger btn-mini commentDeleteButton"
-                                                    value="Delete" title="Delete comment" data-widget id="<c:out value="${comment.widgetId}"/>">
+                                                    value="Delete" title="Delete comment" data-widgetid="<c:out value="${comment.widgetId}"/>">
                                                 <i class="icon-remove icon-white"></i>
                                             </button>
                                             <button id="comment-edit-${comment.entityId}" class="btn btn-mini commentEditButton"

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/admin_approval.ftl
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/admin_approval.ftl?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/admin_approval.ftl (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/admin_approval.ftl Tue Jun 26 18:18:57 2012
@@ -16,7 +16,7 @@
 * specific language governing permissions and limitations
 * under the License.
 -->
-<#-- @ftlvariable name="user" type="org.apache.rave.portal.model.User" -->
+<#-- @ftlvariable name="user" type="org.apache.rave.portal.model.JpaUser" -->
 <#-- @ftlvariable name="portalUrl" type="java.lang.String" -->
 Dear Admin,
 

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/password_reminder.ftl
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/password_reminder.ftl?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/password_reminder.ftl (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/password_reminder.ftl Tue Jun 26 18:18:57 2012
@@ -16,7 +16,7 @@
 * specific language governing permissions and limitations
 * under the License.
 -->
-<#-- @ftlvariable name="user" type="org.apache.rave.portal.model.User" -->
+<#-- @ftlvariable name="user" type="org.apache.rave.portal.model.JpaUser" -->
 <#-- @ftlvariable name="reminderUrl" type="java.lang.String" -->
 Dear ${user.getUsername()},
 

Modified: rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/username_reminder.ftl
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/username_reminder.ftl?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/username_reminder.ftl (original)
+++ rave/trunk/rave-portal-resources/src/main/webapp/WEB-INF/mailtemplates/username_reminder.ftl Tue Jun 26 18:18:57 2012
@@ -16,7 +16,7 @@
 * specific language governing permissions and limitations
 * under the License.
 -->
-<#-- @ftlvariable name="user" type="org.apache.rave.portal.model.User" -->
+<#-- @ftlvariable name="user" type="org.apache.rave.portal.model.JpaUser" -->
 <#-- @ftlvariable name="reminderUrl" type="java.lang.String" -->
 Dear ${user.getUsername()},
 

Modified: rave/trunk/rave-portal/src/main/dist/LICENSE
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal/src/main/dist/LICENSE?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal/src/main/dist/LICENSE (original)
+++ rave/trunk/rave-portal/src/main/dist/LICENSE Tue Jun 26 18:18:57 2012
@@ -2509,6 +2509,36 @@ htmlcleaner-2.2.jar
     (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
     OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
+asm-3.2.jar
+    Containing Project URL: http://asm.ow2.org/
+    
+Copyright (c) 2012 France Télécom
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+1. Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+3. Neither the name of the copyright holders nor the names of its
+   contributors may be used to endorse or promote products derived from
+   this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGE.    
+
 ===============================================================================
 
 For Freemarker:

Modified: rave/trunk/rave-portal/src/test/java/renderer/RenderServiceIntegrationTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal/src/test/java/renderer/RenderServiceIntegrationTest.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal/src/test/java/renderer/RenderServiceIntegrationTest.java (original)
+++ rave/trunk/rave-portal/src/test/java/renderer/RenderServiceIntegrationTest.java Tue Jun 26 18:18:57 2012
@@ -20,11 +20,8 @@
 package renderer;
 
 
-import org.apache.rave.portal.model.Page;
-import org.apache.rave.portal.model.Region;
-import org.apache.rave.portal.model.RegionWidget;
-import org.apache.rave.portal.model.User;
-import org.apache.rave.portal.model.Widget;
+import org.apache.rave.portal.model.*;
+import org.apache.rave.portal.model.impl.*;
 import org.apache.rave.portal.web.renderer.RenderService;
 import org.apache.rave.portal.web.renderer.ScriptLocation;
 import org.apache.rave.portal.web.renderer.ScriptManager;
@@ -47,9 +44,7 @@ import org.springframework.web.client.Re
 import java.util.Arrays;
 import java.util.HashMap;
 
-import static org.hamcrest.CoreMatchers.equalTo;
-import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.CoreMatchers.notNullValue;
+import static org.hamcrest.CoreMatchers.*;
 import static org.junit.Assert.assertThat;
 
 @RunWith(SpringJUnit4ClassRunner.class)
@@ -87,7 +82,7 @@ public class RenderServiceIntegrationTes
         ReflectionTestUtils.setField(metadataRepository, "restOperations", restOperations);
 
         //Setup a mock authenticated user
-        final User authUser = new User(VALID_USER_ID, VALID_USER_NAME);
+        final User authUser = new UserImpl(VALID_USER_ID, VALID_USER_NAME);
         AbstractAuthenticationToken auth = EasyMock.createNiceMock(AbstractAuthenticationToken.class);
         EasyMock.expect(auth.getPrincipal()).andReturn(authUser).anyTimes();
         EasyMock.replay(auth);
@@ -105,17 +100,17 @@ public class RenderServiceIntegrationTes
 
     @Test
     public void renderOpenSocial() {
-        Page page = new Page(1L, new User(VALID_USER_ID, VALID_USER_NAME));
-        Region region = new Region(1L, page, 1);
+        Page page = new PageImpl(1L, new UserImpl(VALID_USER_ID, VALID_USER_NAME));
+        Region region = new RegionImpl(1L, page, 1);
         page.setRegions(Arrays.asList(region));
 
-        Widget w = new Widget();
+        WidgetImpl w = new WidgetImpl();
         w.setType("OpenSocial");
-        w.setEntityId(1L);
+        w.setId(1L);
         w.setTitle("Gadget Title");
         w.setUrl("http://www.example.com/gadget.xml");
 
-        RegionWidget rw = new RegionWidget(1L, w, region);
+        RegionWidget rw = new RegionWidgetImpl(1L, w, region);
         region.setRegionWidgets(Arrays.asList(rw));
 
         RenderContext context = new RenderContext();

Modified: rave/trunk/rave-portal/src/test/resources/test-applicationContext.xml
URL: http://svn.apache.org/viewvc/rave/trunk/rave-portal/src/test/resources/test-applicationContext.xml?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-portal/src/test/resources/test-applicationContext.xml (original)
+++ rave/trunk/rave-portal/src/test/resources/test-applicationContext.xml Tue Jun 26 18:18:57 2012
@@ -22,6 +22,7 @@
        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">
 
     <import resource="classpath:org/apache/rave/core-applicationContext.xml"/>
+    <import resource="classpath:org/apache/rave/jpa-applicationContext.xml"/>
     <import resource="classpath:org/apache/rave/web-applicationContext.xml"/>
     <import resource="classpath:org/apache/rave/opensocial-provider-applicationContext.xml"/>
 

Propchange: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Tue Jun 26 18:18:57 2012
@@ -2,3 +2,4 @@
 target
 .classpath
 .project
+*.iml

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=1354148&r1=1354147&r2=1354148&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 Jun 26 18:18:57 2012
@@ -20,7 +20,9 @@
 package org.apache.rave.provider.opensocial.service.impl;
 
 import org.apache.commons.io.FileUtils;
-import org.apache.rave.portal.model.*;
+import org.apache.rave.portal.model.RegionWidget;
+import org.apache.rave.portal.model.User;
+import org.apache.rave.portal.model.impl.*;
 import org.apache.rave.portal.service.UserService;
 import org.apache.rave.provider.opensocial.exception.SecurityTokenException;
 import org.apache.rave.provider.opensocial.service.SecurityTokenService;
@@ -130,16 +132,16 @@ public class EncryptedBlobSecurityTokenS
         SecurityToken securityToken = this.decryptSecurityToken(encryptedSecurityToken);
 
         //Make sure the person is authorized to refresh this token
-        String userId = String.valueOf(userService.getAuthenticatedUser().getEntityId());
+        String userId = String.valueOf(userService.getAuthenticatedUser().getId());
         if (!securityToken.getViewerId().equalsIgnoreCase(userId)) {
             throw new SecurityTokenException("Illegal attempt by user " + userId +
                     " to refresh security token with a viewerId of " + securityToken.getViewerId());
         }
 
         //Create a new RegionWidget instance from it so we can use it to generate a new encrypted token
-        RegionWidget regionWidget = new RegionWidget(securityToken.getModuleId(),
-                new Widget(-1L, securityToken.getAppUrl()),
-                new Region(-1L, new Page(-1L, new User(Long.valueOf(securityToken.getOwnerId()))), -1));
+        RegionWidget regionWidget = new RegionWidgetImpl(securityToken.getModuleId(),
+                new WidgetImpl(-1L, securityToken.getAppUrl()),
+                new RegionImpl(-1L, new PageImpl(-1L, new UserImpl(Long.valueOf(securityToken.getOwnerId()))), -1));
 
         //Create and return the newly encrypted token
         return getEncryptedSecurityToken(regionWidget);
@@ -151,10 +153,10 @@ public class EncryptedBlobSecurityTokenS
 
         Map<String, String> values = new HashMap<String, String>();
         values.put(AbstractSecurityToken.Keys.APP_URL.getKey(), regionWidget.getWidget().getUrl());
-        values.put(AbstractSecurityToken.Keys.MODULE_ID.getKey(), String.valueOf(regionWidget.getEntityId()));
+        values.put(AbstractSecurityToken.Keys.MODULE_ID.getKey(), String.valueOf(regionWidget.getId()));
         values.put(AbstractSecurityToken.Keys.OWNER.getKey(),
-                String.valueOf(regionWidget.getRegion().getPage().getOwner().getEntityId()));
-        values.put(AbstractSecurityToken.Keys.VIEWER.getKey(), String.valueOf(user.getEntityId()));
+                String.valueOf(regionWidget.getRegion().getPage().getOwner().getId()));
+        values.put(AbstractSecurityToken.Keys.VIEWER.getKey(), String.valueOf(user.getId()));
         values.put(AbstractSecurityToken.Keys.TRUSTED_JSON.getKey(), "");
 
         BlobCrypterSecurityToken securityToken = new BlobCrypterSecurityToken(container, domain, null, values);

Modified: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/service/impl/OpenSocialWidgetMetadataResolver.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/OpenSocialWidgetMetadataResolver.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/service/impl/OpenSocialWidgetMetadataResolver.java (original)
+++ rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-client/src/main/java/org/apache/rave/provider/opensocial/service/impl/OpenSocialWidgetMetadataResolver.java Tue Jun 26 18:18:57 2012
@@ -20,6 +20,7 @@
 package org.apache.rave.provider.opensocial.service.impl;
 
 import org.apache.rave.portal.model.Widget;
+import org.apache.rave.portal.model.impl.WidgetImpl;
 import org.apache.rave.portal.service.WidgetMetadataResolver;
 import org.apache.rave.provider.opensocial.Constants;
 import org.apache.rave.provider.opensocial.repository.GadgetMetadataRepository;
@@ -52,7 +53,7 @@ public class OpenSocialWidgetMetadataRes
      * @return
      */
     public Widget getMetadata(String url) {
-        Widget widget = new Widget();
+        Widget widget = new WidgetImpl();
         JSONObject jsonGadget = null;
         try {
             jsonGadget = (JSONObject) new JSONTokener(gadgetMetadataRepository.getGadgetMetadata(url)).nextValue();

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=1354148&r1=1354147&r2=1354148&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 Jun 26 18:18:57 2012
@@ -98,7 +98,7 @@ public class OpenSocialWidgetRenderer im
         scriptManager.registerScriptBlock(widgetScript, ScriptLocation.AFTER_RAVE, RenderScope.CURRENT_REQUEST, context);
         logger.debug("Gadget Script Data: " + widgetScript);
 
-        return String.format(MARKUP, item.getEntityId());
+        return String.format(MARKUP, item.getId());
     }
 
     private String getWidgetScript(RegionWidget item) {
@@ -114,15 +114,15 @@ public class OpenSocialWidgetRenderer im
         }
 
         return String.format(SCRIPT_BLOCK,
-                item.getRegion().getEntityId(),
+                item.getRegion().getId(),
                 Constants.WIDGET_TYPE,
-                item.getEntityId(),
+                item.getId(),
                 item.getWidget().getUrl(),
                 securityTokenService.getEncryptedSecurityToken(item),
                 openSocialService.getGadgetMetadata(item.getWidget().getUrl()),
                 userPrefs.toString(),
                 item.isCollapsed(),
-                item.getWidget().getEntityId(),
+                item.getWidget().getId(),
                 item.isLocked(),
                 item.isHideChrome());
     }

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=1354148&r1=1354147&r2=1354148&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 Jun 26 18:18:57 2012
@@ -20,6 +20,7 @@
 package org.apache.rave.provider.opensocial.service;
 
 import org.apache.rave.portal.model.*;
+import org.apache.rave.portal.model.impl.*;
 import org.apache.rave.portal.service.UserService;
 import org.apache.rave.provider.opensocial.service.impl.EncryptedBlobSecurityTokenService;
 import org.apache.shindig.auth.SecurityToken;
@@ -76,21 +77,22 @@ public class SecurityTokenServiceTest {
 
     @Before
     public void setup() throws MalformedURLException {
+
         userService = createMock(UserService.class);
         securityTokenService = new EncryptedBlobSecurityTokenService(userService, "default", "default",
                 encryptionKey);
 
-        validPerson = new User(VALID_USER_ID, VALID_USER_NAME);
+        validPerson = new UserImpl(VALID_USER_ID, VALID_USER_NAME);
 
-        validPage = new Page(1L, validPerson);
-        validRegion = new Region(1L, validPage, 1);
+        validPage = new PageImpl(1L, validPerson);
+        validRegion = new RegionImpl(1L, validPage, 1);
         validPage.setRegions(Arrays.asList(validRegion));
 
-        validWidget = new Widget(1L, VALID_URL);
+        validWidget = new WidgetImpl(1L, VALID_URL);
         validWidget.setType("OpenSocial");
         validWidget.setTitle("Widget Title");
 
-        validRegionWidget = new RegionWidget(VALID_REGION_WIDGET_ID, validWidget, validRegion);
+        validRegionWidget = new RegionWidgetImpl(VALID_REGION_WIDGET_ID, validWidget, validRegion);
         validRegion.setRegionWidgets(Arrays.asList(validRegionWidget));
     }
 
@@ -106,7 +108,7 @@ public class SecurityTokenServiceTest {
     @Test
     public void getSecurityToken_validWidget_ownerIsNotViewer() throws SecurityTokenException {
         Long expectedOwnerId = 99999L;
-        validPage.setOwner(new User(expectedOwnerId));
+        validPage.setOwner(new UserImpl(expectedOwnerId));
 
         expect(userService.getAuthenticatedUser()).andReturn(validPerson).anyTimes();
         replay(userService);

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=1354148&r1=1354147&r2=1354148&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 Jun 26 18:18:57 2012
@@ -23,7 +23,10 @@ import org.apache.rave.exception.NotSupp
 import org.apache.rave.portal.model.Region;
 import org.apache.rave.portal.model.RegionWidget;
 import org.apache.rave.portal.model.RegionWidgetPreference;
-import org.apache.rave.portal.model.Widget;
+import org.apache.rave.portal.model.impl.RegionImpl;
+import org.apache.rave.portal.model.impl.RegionWidgetImpl;
+import org.apache.rave.portal.model.impl.RegionWidgetPreferenceImpl;
+import org.apache.rave.portal.model.impl.WidgetImpl;
 import org.apache.rave.portal.web.renderer.RenderScope;
 import org.apache.rave.portal.web.renderer.Renderer;
 import org.apache.rave.portal.web.renderer.ScriptLocation;
@@ -76,21 +79,21 @@ public class OpenSocialWidgetRendererTes
         expect(openSocialService.getGadgetMetadata(VALID_GADGET_URL)).andReturn(VALID_METADATA);
         replay(openSocialService);
 
-        Widget w = new Widget();
-        w.setEntityId(1L);
+        WidgetImpl w = new WidgetImpl();
+        w.setId(1L);
         w.setType(Constants.WIDGET_TYPE);
         w.setUrl(VALID_GADGET_URL);
-        Region region = new Region(1L);
-        RegionWidget rw = new RegionWidget();
-        rw.setEntityId(1L);
+        Region region = new RegionImpl(1L);
+        RegionWidget rw = new RegionWidgetImpl();
+        rw.setId(1L);
         rw.setCollapsed(VALID_COLLAPSED);
         rw.setWidget(w);
         rw.setRegion(region);
         rw.setHideChrome(VALID_HIDE_CHROME);
         rw.setLocked(VALID_LOCKED);
-        rw.setPreferences(Arrays.asList(new RegionWidgetPreference(1L, 1L, "color", "blue"),
-                                        new RegionWidgetPreference(2L, 1L, "speed", "fast"),
-                                        new RegionWidgetPreference(3L, 1L, null, null)));
+        rw.setPreferences(Arrays.asList((RegionWidgetPreference)new RegionWidgetPreferenceImpl( 1L, "color", "blue"),
+                                        new RegionWidgetPreferenceImpl(1L, "speed", "fast"),
+                                        new RegionWidgetPreferenceImpl( 1L, null, null)));
 
         final String markup =
             "<script>rave.registerWidget(1, {type: 'OpenSocial'," +
@@ -120,10 +123,10 @@ public class OpenSocialWidgetRendererTes
 
     @Test
     public void render_null() {
-        Widget w = new Widget();
+        WidgetImpl w = new WidgetImpl();
         w.setType(Constants.WIDGET_TYPE);
-        Region region = new Region(1L);
-        RegionWidget rw = new RegionWidget();
+        Region region = new RegionImpl(1L);
+        RegionWidget rw = new RegionWidgetImpl();
         rw.setWidget(w);
         rw.setRegion(region);
 
@@ -147,11 +150,11 @@ public class OpenSocialWidgetRendererTes
 
     @Test(expected = NotSupportedException.class)
     public void render_invalid() {
-        Widget w = new Widget();
+        WidgetImpl w = new WidgetImpl();
         w.setType("NONE");
         w.setUrl("http://www.example.com/gadget.xml");
-        RegionWidget rw = new RegionWidget();
-        rw.setEntityId(1L);
+        RegionWidget rw = new RegionWidgetImpl();
+        rw.setId(1L);
         rw.setWidget(w);
 
         renderer.render(rw, null);

Propchange: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Tue Jun 26 18:18:57 2012
@@ -2,3 +2,4 @@
 target
 .classpath
 .project
+*.iml

Modified: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/pom.xml
URL: http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/pom.xml?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/pom.xml (original)
+++ rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/pom.xml Tue Jun 26 18:18:57 2012
@@ -46,11 +46,6 @@
         </dependency>
 
         <dependency>
-            <groupId>org.apache.openjpa</groupId>
-            <artifactId>openjpa</artifactId>
-        </dependency>
-
-        <dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-core</artifactId>
         </dependency>
@@ -139,48 +134,6 @@
         </dependency>
     </dependencies>
     <build>
-        <defaultGoal>install</defaultGoal>        
-          <plugins>
-             <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>openjpa-maven-plugin</artifactId>
-                <version>1.2</version>
-                <configuration>
-                    <includes>
-                        org/apache/rave/gadgets/oauth/model/*.class,
-                        org/apache/rave/opensocial/model/*.class,
-                        org/apache/rave/opensocial/repository/impl/JpaApplicationDataRepository$JpaSerializableApplicationData.class,
-                        org/apache/shindig/social/opensocial/jpa/*.class
-                    </includes>
-                    <excludes>
-                        org/apache/shindig/social/opensocial/jpa/EnumDb.class,
-                        org/apache/rave/gadgets/oauth/model/OAuthConsumerStore$KeyType.class
-                    </excludes>
-                    <addDefaultConstructor>true</addDefaultConstructor>
-                    <enforcePropertyRestrictions>true</enforcePropertyRestrictions>
-                </configuration>
-                <executions>
-                    <execution>
-                        <id>enhancer</id>
-                        <phase>process-classes</phase>
-                        <goals>
-                            <goal>enhance</goal>
-                        </goals>
-                    </execution>
-                </executions>
-                <dependencies>
-                  <!-- RAVE-245: Enforce xercesImpl:2.9.1 on the classpath for openjpa-maven-plugin
-                                 to resolve a conflicting classloader resolution when *also* running
-                                 a forked test lifecycle by the maven-cobertura-plugin, 
-                                 e.g. through mvn install cobertura:cobertura                                 
-                  -->
-                  <dependency>
-                    <groupId>xerces</groupId>
-                    <artifactId>xercesImpl</artifactId>
-                    <version>2.9.1</version>
-                  </dependency>
-                </dependencies>
-            </plugin>
-       </plugins>
+        <defaultGoal>install</defaultGoal>
    </build>
 </project>

Modified: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/inject/DefaultOAuthStore.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/inject/DefaultOAuthStore.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/inject/DefaultOAuthStore.java (original)
+++ rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/inject/DefaultOAuthStore.java Tue Jun 26 18:18:57 2012
@@ -19,18 +19,16 @@
 
 package org.apache.rave.gadgets.oauth.inject;
 
-import java.io.IOException;
-import java.io.InputStream;
-
 import net.oauth.OAuth;
 import net.oauth.OAuthConsumer;
 import net.oauth.OAuthServiceProvider;
 import net.oauth.signature.RSA_SHA1;
 import org.apache.commons.io.IOUtils;
-import org.apache.rave.gadgets.oauth.model.OAuthConsumerStore;
-import org.apache.rave.gadgets.oauth.model.OAuthTokenInfo;
 import org.apache.rave.gadgets.oauth.service.OAuthConsumerStoreService;
 import org.apache.rave.gadgets.oauth.service.OAuthTokenInfoService;
+import org.apache.rave.portal.model.OAuthConsumerStore;
+import org.apache.rave.portal.model.OAuthTokenInfo;
+import org.apache.rave.portal.model.impl.OAuthTokenInfoImpl;
 import org.apache.shindig.auth.SecurityToken;
 import org.apache.shindig.gadgets.GadgetException;
 import org.apache.shindig.gadgets.oauth.BasicOAuthStore;
@@ -39,6 +37,9 @@ import org.apache.shindig.gadgets.oauth.
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.io.ClassPathResource;
 
+import java.io.IOException;
+import java.io.InputStream;
+
 /**
  * {@link OAuthStore} that retrieves the consumer_key, consumer_secret and key_type from the database
  * <p/>
@@ -111,8 +112,9 @@ public class DefaultOAuthStore implement
     @Override
     public void setTokenInfo(SecurityToken securityToken, ConsumerInfo consumerInfo, String serviceName,
                              String tokenName, TokenInfo tokenInfo) throws GadgetException {
-        OAuthTokenInfo oAuthTokenInfo = new OAuthTokenInfo(securityToken,
-                serviceName, tokenName, tokenInfo);
+        OAuthTokenInfo oAuthTokenInfo = new OAuthTokenInfoImpl(securityToken.getAppUrl(),
+                serviceName, tokenName, tokenInfo.getAccessToken(), tokenInfo.getSessionHandle(),
+                tokenInfo.getTokenSecret(), securityToken.getViewerId(), tokenInfo.getTokenExpireMillis());
         tokenInfoService.saveOAuthTokenInfo(oAuthTokenInfo);
     }
 
@@ -130,7 +132,7 @@ public class DefaultOAuthStore implement
      * Creates an {@link OAuthConsumer} based on the OAuth signature method
      *
      * @param provider      {@link net.oauth.OAuthServiceProvider}
-     * @param consumerStore {@link OAuthConsumerStore}
+     * @param consumerStore {@link org.apache.rave.portal.model.OAuthConsumerStore}
      *                      persistent OAuth consumer keys & secrets
      * @return {@link OAuthConsumer} if the signature method is supported
      */

Modified: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/OAuthConsumerStoreService.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/OAuthConsumerStoreService.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/OAuthConsumerStoreService.java (original)
+++ rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/OAuthConsumerStoreService.java Tue Jun 26 18:18:57 2012
@@ -19,7 +19,7 @@
 
 package org.apache.rave.gadgets.oauth.service;
 
-import org.apache.rave.gadgets.oauth.model.OAuthConsumerStore;
+import org.apache.rave.portal.model.OAuthConsumerStore;
 
 /**
  * Service to handle OAuth Consumer store
@@ -27,27 +27,27 @@ import org.apache.rave.gadgets.oauth.mod
 public interface OAuthConsumerStoreService {
 
     /**
-     * Fetches {@link OAuthConsumerStore} based on the gadget location and the service provider
+     * Fetches {@link org.apache.rave.portal.model.OAuthConsumerStore} based on the gadget location and the service provider
      *
      * @param gadgetUri   location of the gadget definition
      * @param serviceName name of the service provider
-     * @return {@link OAuthConsumerStore} or {@literal null} if none matches the criteria
+     * @return {@link org.apache.rave.portal.model.OAuthConsumerStore} or {@literal null} if none matches the criteria
      */
     OAuthConsumerStore findByUriAndServiceName(String gadgetUri, String serviceName);
 
     /**
-     * Persists {@link OAuthConsumerStore}
+     * Persists {@link org.apache.rave.portal.model.OAuthConsumerStore}
      *
-     * @param oAuthConsumerStore {@link OAuthConsumerStore} to store
-     * @return persisted {@link OAuthConsumerStore}
+     * @param oAuthConsumerStore {@link org.apache.rave.portal.model.OAuthConsumerStore} to store
+     * @return persisted {@link org.apache.rave.portal.model.OAuthConsumerStore}
      */
 
     OAuthConsumerStore save(OAuthConsumerStore oAuthConsumerStore);
 
     /**
-     * Removes the {@link OAuthConsumerStore} from the database
+     * Removes the {@link org.apache.rave.portal.model.OAuthConsumerStore} from the database
      *
-     * @param oAuthConsumerStore {@link OAuthConsumerStore} to delete
+     * @param oAuthConsumerStore {@link org.apache.rave.portal.model.OAuthConsumerStore} to delete
      */
     void delete(OAuthConsumerStore oAuthConsumerStore);
 }

Modified: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/OAuthTokenInfoService.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/OAuthTokenInfoService.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/OAuthTokenInfoService.java (original)
+++ rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/OAuthTokenInfoService.java Tue Jun 26 18:18:57 2012
@@ -19,35 +19,35 @@
 
 package org.apache.rave.gadgets.oauth.service;
 
-import org.apache.rave.gadgets.oauth.model.OAuthTokenInfo;
+import org.apache.rave.portal.model.OAuthTokenInfo;
 
 /**
  * Service to handle OAuth Tokens
  */
 public interface OAuthTokenInfoService {
     /**
-     * Retrieves {@link OAuthTokenInfo}
+     * Retrieves {@link org.apache.rave.portal.model.OAuthTokenInfo}
      *
      * @param userId      unique identifier of gadget viewer
      * @param appUrl      URL of the gadget
      * @param moduleId    the module ID of the application
      * @param tokenName   gadget's nickname for the token to use
      * @param serviceName name of the service provider
-     * @return {@link OAuthTokenInfo} or {@literal null} if none matches the criteria
+     * @return {@link org.apache.rave.portal.model.OAuthTokenInfo} or {@literal null} if none matches the criteria
      */
     OAuthTokenInfo findOAuthTokenInfo(String userId, String appUrl, String moduleId,
                                              String tokenName, String serviceName);
 
     /**
-     * Persists the {@link OAuthTokenInfo} to the data store
+     * Persists the {@link org.apache.rave.portal.model.OAuthTokenInfo} to the data store
      *
-     * @param tokenInfo {@link OAuthTokenInfo} to save
+     * @param tokenInfo {@link org.apache.rave.portal.model.OAuthTokenInfo} to save
      * @return persisted OAuthTokenInfo
      */
     OAuthTokenInfo saveOAuthTokenInfo(OAuthTokenInfo tokenInfo);
 
     /**
-     * Removes the {@link OAuthTokenInfo}'s that match the criteria from the data store
+     * Removes the {@link org.apache.rave.portal.model.OAuthTokenInfo}'s that match the criteria from the data store
      *
      * @param userId      unique identifier of the gadget viewer
      * @param appUrl      URL of the gadget

Modified: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/impl/DefaultOAuthConsumerStoreService.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/impl/DefaultOAuthConsumerStoreService.java?rev=1354148&r1=1354147&r2=1354148&view=diff
==============================================================================
--- rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/impl/DefaultOAuthConsumerStoreService.java (original)
+++ rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/impl/DefaultOAuthConsumerStoreService.java Tue Jun 26 18:18:57 2012
@@ -19,14 +19,14 @@
 
 package org.apache.rave.gadgets.oauth.service.impl;
 
-import org.apache.rave.gadgets.oauth.model.OAuthConsumerStore;
-import org.apache.rave.gadgets.oauth.repository.OAuthConsumerStoreRepository;
+import org.apache.rave.portal.model.OAuthConsumerStore;
+import org.apache.rave.portal.repository.OAuthConsumerStoreRepository;
 import org.apache.rave.gadgets.oauth.service.OAuthConsumerStoreService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 /**
- * JPA implementation for {@link OAuthConsumerStoreService}
+ * Implementation for {@link OAuthConsumerStoreService}
  */
 @Service
 public class DefaultOAuthConsumerStoreService implements OAuthConsumerStoreService {