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 2013/10/07 02:06:50 UTC
svn commit: r1529722 - in /rave/trunk/rave-components/rave-mongodb/src:
main/java/org/apache/rave/portal/repository/
main/java/org/apache/rave/portal/repository/impl/
test/java/org/apache/rave/portal/repository/impl/
Author: mfranklin
Date: Mon Oct 7 00:06:49 2013
New Revision: 1529722
URL: http://svn.apache.org/r1529722
Log:
Updated repository to use Operations model (RAVE-1062)
Added:
rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/MongoPageTemplateOperations.java
rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoPageTemplateTemplate.java
Modified:
rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageTemplateRepository.java
rave/trunk/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbPageTemplateRepositoryTest.java
Added: rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/MongoPageTemplateOperations.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/MongoPageTemplateOperations.java?rev=1529722&view=auto
==============================================================================
--- rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/MongoPageTemplateOperations.java (added)
+++ rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/MongoPageTemplateOperations.java Mon Oct 7 00:06:49 2013
@@ -0,0 +1,5 @@
+package org.apache.rave.portal.repository;
+
+import org.apache.rave.model.PageTemplate;
+
+public interface MongoPageTemplateOperations extends MongoModelOperations<PageTemplate> {}
Modified: rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageTemplateRepository.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageTemplateRepository.java?rev=1529722&r1=1529721&r2=1529722&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageTemplateRepository.java (original)
+++ rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageTemplateRepository.java Mon Oct 7 00:06:49 2013
@@ -19,21 +19,18 @@
package org.apache.rave.portal.repository.impl;
-import org.apache.rave.portal.model.MongoDbPageTemplate;
import org.apache.rave.model.PageTemplate;
-import org.apache.rave.portal.model.conversion.HydratingConverterFactory;
+import org.apache.rave.portal.repository.MongoPageTemplateOperations;
import org.apache.rave.portal.repository.PageTemplateRepository;
-import org.apache.rave.util.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.mongodb.core.MongoOperations;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Repository;
import sun.reflect.generics.reflectiveObjects.NotImplementedException;
import java.util.List;
-import static org.apache.rave.portal.repository.util.CollectionNames.PAGE_TEMPLATE_COLLECTION;
import static org.springframework.data.mongodb.core.query.Criteria.where;
+import static org.springframework.data.mongodb.core.query.Query.query;
/**
*/
@@ -41,41 +38,31 @@ import static org.springframework.data.m
public class MongoDbPageTemplateRepository implements PageTemplateRepository {
@Autowired
- private HydratingConverterFactory converter;
-
- @Autowired
- private MongoOperations template;
+ private MongoPageTemplateOperations template;
@Override
public List<PageTemplate> getAll() {
- List<MongoDbPageTemplate> templates = template.findAll(MongoDbPageTemplate.class, PAGE_TEMPLATE_COLLECTION);
- for(MongoDbPageTemplate temp : templates) {
- converter.hydrate(temp, PageTemplate.class);
- }
- return CollectionUtils.<PageTemplate>toBaseTypedList(templates);
+ return template.find(new Query());
}
@Override
public List<PageTemplate> getLimitedList(int offset, int limit) {
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ return template.find(new Query().limit(limit).skip(offset));
}
@Override
public int getCountAll() {
- return 0;
+ return (int)template.count(new Query());
}
@Override
public List<PageTemplate> getAllForType(String pageType) {
-
- return null;
+ return template.find(query(where("pageType").is(pageType.toUpperCase())));
}
@Override
public PageTemplate getDefaultPage(String pageType) {
- PageTemplate temp = template.findOne(new Query(where("pageType").is(pageType.toUpperCase()).andOperator(where("defaultTemplate").is(true))), MongoDbPageTemplate.class, PAGE_TEMPLATE_COLLECTION);
- converter.hydrate(temp, PageTemplate.class);
- return temp;
+ return template.findOne(new Query(where("pageType").is(pageType.toUpperCase()).andOperator(where("defaultTemplate").is(true))));
}
@Override
@@ -85,27 +72,20 @@ public class MongoDbPageTemplateReposito
@Override
public PageTemplate get(String id) {
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ return template.get(id);
}
@Override
public PageTemplate save(PageTemplate pageTemplate) {
- MongoDbPageTemplate converted = converter.convert(pageTemplate, PageTemplate.class);
- template.save(converted, PAGE_TEMPLATE_COLLECTION);
- converter.hydrate(converted, PageTemplate.class);
- return converted;
+ return template.save(pageTemplate);
}
@Override
public void delete(PageTemplate item) {
- throw new NotImplementedException();
- }
-
- public void setConverter(HydratingConverterFactory converter) {
- this.converter = converter;
+ template.remove(query(where("_id").is(item.getId())));
}
- public void setTemplate(MongoOperations template) {
+ public void setTemplate(MongoPageTemplateOperations template) {
this.template = template;
}
}
Added: rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoPageTemplateTemplate.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoPageTemplateTemplate.java?rev=1529722&view=auto
==============================================================================
--- rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoPageTemplateTemplate.java (added)
+++ rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoPageTemplateTemplate.java Mon Oct 7 00:06:49 2013
@@ -0,0 +1,17 @@
+package org.apache.rave.portal.repository.impl;
+
+import org.apache.rave.model.PageTemplate;
+import org.apache.rave.portal.model.MongoDbPageTemplate;
+import org.apache.rave.portal.repository.MongoPageTemplateOperations;
+
+import static org.apache.rave.portal.repository.util.CollectionNames.PAGE_TEMPLATE_COLLECTION;
+
+/**
+ * MongoModelTemplate for the PageTemplate class
+ */
+public class MongoPageTemplateTemplate extends MongoModelTemplate<PageTemplate, MongoDbPageTemplate> implements MongoPageTemplateOperations {
+
+ public MongoPageTemplateTemplate() {
+ super(PageTemplate.class, MongoDbPageTemplate.class, PAGE_TEMPLATE_COLLECTION);
+ }
+}
Modified: rave/trunk/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbPageTemplateRepositoryTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbPageTemplateRepositoryTest.java?rev=1529722&r1=1529721&r2=1529722&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbPageTemplateRepositoryTest.java (original)
+++ rave/trunk/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbPageTemplateRepositoryTest.java Mon Oct 7 00:06:49 2013
@@ -24,6 +24,7 @@ import org.apache.rave.model.PageTemplat
import org.apache.rave.model.PageType;
import org.apache.rave.portal.model.conversion.HydratingConverterFactory;
import org.apache.rave.portal.model.impl.PageTemplateImpl;
+import org.apache.rave.portal.repository.MongoPageTemplateOperations;
import org.apache.rave.portal.repository.util.CollectionNames;
import org.apache.rave.util.CollectionUtils;
import org.junit.Before;
@@ -48,30 +49,24 @@ import static org.springframework.data.m
public class MongoDbPageTemplateRepositoryTest {
private MongoDbPageTemplateRepository templateRepository;
- private HydratingConverterFactory converter;
- private MongoOperations template;
+ private MongoPageTemplateOperations template;
@Before
public void setup(){
templateRepository = new MongoDbPageTemplateRepository();
- converter = createMock(HydratingConverterFactory.class);
- template = createMock(MongoOperations.class);
+ template = createMock(MongoPageTemplateOperations.class);
templateRepository.setTemplate(template);
- templateRepository.setConverter(converter);
}
@Test
public void getAll_Valid() {
- List<MongoDbPageTemplate> templates = new ArrayList<MongoDbPageTemplate>();
+ List<PageTemplate> templates = new ArrayList<PageTemplate>();
PageTemplate temp = new MongoDbPageTemplate();
templates.add((MongoDbPageTemplate)temp);
- expect(template.findAll(MongoDbPageTemplate.class, CollectionNames.PAGE_TEMPLATE_COLLECTION)).andReturn(templates);
- converter.hydrate(temp, PageTemplate.class);
- expectLastCall();
- replay(template, converter);
+ expect(template.find(new Query())).andReturn(templates);
+ replay(template);
List<PageTemplate> returned = templateRepository.getAll();
- verify(converter);
assertThat(returned, is(sameInstance(CollectionUtils.<PageTemplate>toBaseTypedList(templates))));
}
@@ -79,10 +74,8 @@ public class MongoDbPageTemplateReposito
public void getDefaultPage_Valid(){
PageType pageType = PageType.get("user");
MongoDbPageTemplate found = new MongoDbPageTemplate();
- expect(template.findOne(new Query(where("pageType").is(pageType.getPageType().toUpperCase()).andOperator(where("defaultTemplate").is(true))), MongoDbPageTemplate.class, CollectionNames.PAGE_TEMPLATE_COLLECTION)).andReturn(found);
- converter.hydrate(found, PageTemplate.class);
- expectLastCall();
- replay(converter, template);
+ expect(template.findOne(new Query(where("pageType").is(pageType.getPageType().toUpperCase()).andOperator(where("defaultTemplate").is(true))))).andReturn(found);
+ replay(template);
PageTemplate returned = templateRepository.getDefaultPage(pageType.toString());
@@ -94,12 +87,8 @@ public class MongoDbPageTemplateReposito
PageTemplate pageTemplate = new PageTemplateImpl();
MongoDbPageTemplate converted = new MongoDbPageTemplate();
- expect(converter.convert(pageTemplate, PageTemplate.class)).andReturn(converted);
- template.save(converted, CollectionNames.PAGE_TEMPLATE_COLLECTION);
- expectLastCall();
- converter.hydrate(converted, PageTemplate.class);
- expectLastCall();
- replay(converter, template);
+ expect(template.save(eq(converted))).andReturn(converted);
+ replay(template);
PageTemplate saved = templateRepository.save(pageTemplate);
assertThat(converted, is(sameInstance(saved)));