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/01/01 02:09:57 UTC
svn commit: r1427268 - in
/rave/branches/mongo/rave-components/rave-mongodb/src:
main/java/org/apache/rave/portal/model/conversion/impl/
main/java/org/apache/rave/portal/repository/
main/java/org/apache/rave/portal/repository/impl/ test/java/org/apache...
Author: mfranklin
Date: Tue Jan 1 01:09:57 2013
New Revision: 1427268
URL: http://svn.apache.org/viewvc?rev=1427268&view=rev
Log:
Fixed minor bugs with String Ids
Modified:
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbAuthorityConverter.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverter.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverter.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPortalPreferenceConverter.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverter.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbWidgetConverter.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/TagImplConverter.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/StatisticsAggregator.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbMapReduceStatisticsAggregator.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageRepository.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbTagRepository.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbUserRepository.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbWidgetRepository.java
rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbAuthorityConverterTest.java
rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverterTest.java
rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverterTest.java
rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbPortalPreferenceConverterTest.java
rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverterTest.java
rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbUserRepositoryTest.java
rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbWidgetRatingRepositoryTest.java
rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MonogoDbMapReduceStatisticsAggregatorTest.java
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbAuthorityConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbAuthorityConverter.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbAuthorityConverter.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbAuthorityConverter.java Tue Jan 1 01:09:57 2013
@@ -24,8 +24,6 @@ import org.apache.rave.portal.model.Mong
import org.apache.rave.portal.model.conversion.HydratingModelConverter;
import org.springframework.stereotype.Component;
-import static org.apache.rave.portal.model.util.MongoDbModelUtil.generateId;
-
@Component
public class MongoDbAuthorityConverter implements HydratingModelConverter<Authority, MongoDbAuthority> {
@Override
@@ -40,13 +38,7 @@ public class MongoDbAuthorityConverter i
@Override
public MongoDbAuthority convert(Authority source) {
- MongoDbAuthority converted;
- if(source instanceof MongoDbAuthority) {
- converted = ((MongoDbAuthority)source);
- } else {
- converted = new MongoDbAuthority();
- converted.setId(generateId());
- }
+ MongoDbAuthority converted = source instanceof MongoDbAuthority ? (MongoDbAuthority) source : new MongoDbAuthority();
converted.setAuthority(source.getAuthority());
converted.setDefaultForNewUser(source.isDefaultForNewUser());
return converted;
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverter.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverter.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverter.java Tue Jan 1 01:09:57 2013
@@ -26,6 +26,8 @@ import org.apache.rave.portal.repository
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
+import static org.apache.rave.portal.model.util.MongoDbModelUtil.generateId;
+
@Component
public class MongoDbCategoryConverter implements HydratingModelConverter<Category, MongoDbCategory> {
@@ -49,7 +51,7 @@ public class MongoDbCategoryConverter im
@Override
public MongoDbCategory convert(Category source) {
MongoDbCategory category = new MongoDbCategory();
- category.setId(source.getId());
+ category.setId(source.getId() == null ? generateId() : source.getId());
category.setCreatedDate(source.getCreatedDate());
category.setCreatedUserId(source.getCreatedUserId());
category.setLastModifiedUserId(source.getLastModifiedUserId());
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java Tue Jan 1 01:09:57 2013
@@ -49,7 +49,7 @@ public class MongoDbPageConverter implem
@Override
public MongoDbPage convert(Page sourcePage) {
MongoDbPage page = new MongoDbPage();
- page.setId(sourcePage.getId());
+ page.setId(sourcePage.getId() == null ? generateId() : sourcePage.getId());
page.setOwnerId(sourcePage.getOwnerId());
page.setPageLayoutCode(sourcePage.getPageLayout().getCode());
page.setName(sourcePage.getName());
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverter.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverter.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverter.java Tue Jan 1 01:09:57 2013
@@ -135,7 +135,7 @@ public class MongoDbPageTemplateConverte
}
private void updateProperties(PageTemplate source, MongoDbPageTemplate converted) {
- converted.setId(source.getId());
+ converted.setId(source.getId() == null ? generateId() : source.getId());
converted.setName(source.getName());
converted.setDescription(source.getDescription());
converted.setPageType(source.getPageType());
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPortalPreferenceConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPortalPreferenceConverter.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPortalPreferenceConverter.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPortalPreferenceConverter.java Tue Jan 1 01:09:57 2013
@@ -24,8 +24,6 @@ import org.apache.rave.portal.model.Port
import org.apache.rave.portal.model.conversion.HydratingModelConverter;
import org.springframework.stereotype.Component;
-import static org.apache.rave.portal.model.util.MongoDbModelUtil.generateId;
-
@Component
public class MongoDbPortalPreferenceConverter implements HydratingModelConverter<PortalPreference, MongoDbPortalPreference> {
@Override
@@ -40,14 +38,7 @@ public class MongoDbPortalPreferenceConv
@Override
public MongoDbPortalPreference convert(PortalPreference source) {
- MongoDbPortalPreference converted;
- if (source instanceof MongoDbPortalPreference) {
- converted = ((MongoDbPortalPreference) source);
- }
- else {
- converted = new MongoDbPortalPreference();
- converted.setId(generateId());
- }
+ MongoDbPortalPreference converted = source instanceof MongoDbPortalPreference ? (MongoDbPortalPreference) source : new MongoDbPortalPreference();
converted.setKey(source.getKey());
converted.setValues(source.getValues());
return converted;
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverter.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverter.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverter.java Tue Jan 1 01:09:57 2013
@@ -67,7 +67,7 @@ public class MongoDbUserConverter implem
@Override
public MongoDbUser convert(User source) {
- MongoDbUser user = new MongoDbUser();
+ MongoDbUser user = source instanceof MongoDbUser ? (MongoDbUser)source : new MongoDbUser();
List<String> authorityCodes = Lists.newArrayList();
for(GrantedAuthority authority : source.getAuthorities()) {
authorityCodes.add(authority.getAuthority());
@@ -102,7 +102,7 @@ public class MongoDbUserConverter implem
converted.setOpenId(source.getOpenId());
converted.setForgotPasswordHash(source.getForgotPasswordHash());
converted.setForgotPasswordTime(source.getForgotPasswordTime());
-
+ converted.setPageLayoutRepository(null);
}
private String getPageLayoutCode(User source) {
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbWidgetConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbWidgetConverter.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbWidgetConverter.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbWidgetConverter.java Tue Jan 1 01:09:57 2013
@@ -97,7 +97,7 @@ public class MongoDbWidgetConverter impl
}
private void updateProperties(Widget source, MongoDbWidget converted) {
- converted.setId(source.getId());
+ converted.setId(source.getId() == null ? generateId() : source.getId());
converted.setUrl(source.getUrl());
converted.setType(source.getType());
converted.setTitle(source.getTitle());
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/TagImplConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/TagImplConverter.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/TagImplConverter.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/TagImplConverter.java Tue Jan 1 01:09:57 2013
@@ -5,6 +5,8 @@ import org.apache.rave.portal.model.conv
import org.apache.rave.portal.model.impl.TagImpl;
import org.springframework.stereotype.Component;
+import static org.apache.rave.portal.model.util.MongoDbModelUtil.generateId;
+
@Component
public class TagImplConverter implements HydratingModelConverter<Tag, TagImpl> {
@Override
@@ -19,6 +21,7 @@ public class TagImplConverter implements
@Override
public TagImpl convert(Tag tag) {
- return new TagImpl(tag.getId(), tag.getKeyword());
+ String id = tag.getId() == null ? generateId() : tag.getId();
+ return new TagImpl(id, tag.getKeyword());
}
}
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/StatisticsAggregator.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/StatisticsAggregator.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/StatisticsAggregator.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/StatisticsAggregator.java Tue Jan 1 01:09:57 2013
@@ -22,6 +22,7 @@ package org.apache.rave.portal.repositor
import org.apache.rave.portal.model.util.WidgetStatistics;
import java.util.Map;
+import java.util.Set;
/**
* Manages statistics for various attributes of the Rave
@@ -29,4 +30,5 @@ import java.util.Map;
public interface StatisticsAggregator {
Map<String, WidgetStatistics> getAllWidgetStatistics(String userId);
WidgetStatistics getWidgetStatistics(String widget_id, String user_id);
+ Set<String> getUsersWithWidget(String widgetId);
}
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbMapReduceStatisticsAggregator.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbMapReduceStatisticsAggregator.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbMapReduceStatisticsAggregator.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbMapReduceStatisticsAggregator.java Tue Jan 1 01:09:57 2013
@@ -33,6 +33,7 @@ import org.springframework.stereotype.Co
import javax.annotation.PostConstruct;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
@@ -75,6 +76,12 @@ public class MongoDbMapReduceStatisticsA
}
@Override
+ public Set<String> getUsersWithWidget(String widgetId) {
+ WidgetUsersMapReduceResult result = mongoOperations.findById(widgetId, WidgetUsersMapReduceResult.class, WIDGET_USERS);
+ return result.getValue().keySet();
+ }
+
+ @Override
public Map<String , WidgetStatistics> getAllWidgetStatistics(String userId) {
List<WidgetRatingsMapReduceResult> widgetStats = mongoOperations.findAll(WidgetRatingsMapReduceResult.class, WIDGET_RATINGS);
List<WidgetUsersMapReduceResult> widgetUsers = mongoOperations.findAll(WidgetUsersMapReduceResult.class, WIDGET_USERS);
@@ -102,7 +109,7 @@ public class MongoDbMapReduceStatisticsA
public void buildStats() {
RunStatistics runStats = mongoOperations.findById(ID, RunStatistics.class, OPERATIONS);
- if(runStats == null || (System.currentTimeMillis() - runStats.getRefreshedTimeStamp() > DEFAULT_RESULT_VALIDITY)) {
+ if(runStats == null || (System.currentTimeMillis() - (runStats.getRefreshedTimeStamp()*1000) > DEFAULT_RESULT_VALIDITY)) {
queryForUserStats();
}
}
@@ -126,7 +133,8 @@ public class MongoDbMapReduceStatisticsA
}
private MapReduceOptions getOptions(String collection) {
- return MapReduceOptions.options().javaScriptMode(true).outputCollection(collection).outputTypeReplace();
+ //Currently a bug in javascriptMode prevents maps from being correctly stored by the db
+ return MapReduceOptions.options().outputCollection(collection).outputTypeReplace();
}
private MapReduceResults<WidgetUsersMapReduceResult> executeUsersMapReduce() {
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageRepository.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageRepository.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageRepository.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageRepository.java Tue Jan 1 01:09:57 2013
@@ -36,7 +36,6 @@ import java.util.Collections;
import java.util.Comparator;
import java.util.List;
-import static org.bson.types.ObjectId.massageToObjectId;
import static org.springframework.data.mongodb.core.query.Criteria.where;
import static org.springframework.data.mongodb.core.query.Query.query;
@@ -108,7 +107,7 @@ public class MongoDbPageRepository imple
@Override
public void delete(Page item) {
- template.remove(query(where("_id").is(massageToObjectId(item.getId()))));
+ template.remove(query(where("_id").is(item.getId())));
}
private List<Page> sort(List<Page> pages, final String userId) {
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbTagRepository.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbTagRepository.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbTagRepository.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbTagRepository.java Tue Jan 1 01:09:57 2013
@@ -72,7 +72,7 @@ public class MongoDbTagRepository implem
@Override
public void delete(Tag item) {
- template.remove(query(where("_id").is(massageToObjectId(item.getId()))));
+ template.remove(query(where("_id").is(item.getId())));
}
public void setWidgetTemplate(MongoTagOperations tagTemplate) {
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbUserRepository.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbUserRepository.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbUserRepository.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbUserRepository.java Tue Jan 1 01:09:57 2013
@@ -20,11 +20,10 @@
package org.apache.rave.portal.repository.impl;
import com.google.common.collect.Lists;
-import com.google.common.collect.Sets;
import org.apache.rave.portal.model.MongoDbUser;
-import org.apache.rave.portal.model.Page;
import org.apache.rave.portal.model.User;
import org.apache.rave.portal.repository.MongoUserOperations;
+import org.apache.rave.portal.repository.StatisticsAggregator;
import org.apache.rave.portal.repository.UserRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.query.Criteria;
@@ -34,10 +33,8 @@ import org.springframework.stereotype.Re
import java.util.Collection;
import java.util.List;
-import java.util.Set;
import java.util.regex.Pattern;
-import static org.bson.types.ObjectId.massageToObjectId;
import static org.springframework.data.mongodb.core.query.Criteria.where;
import static org.springframework.data.mongodb.core.query.Query.query;
@@ -51,7 +48,7 @@ public class MongoDbUserRepository imple
private MongoUserOperations template;
@Autowired
- private MongoPageTemplate pageTemplate;
+ private StatisticsAggregator statisticsAggregator;
@Override
public User getByUsername(String username) {
@@ -91,15 +88,7 @@ public class MongoDbUserRepository imple
@Override
public List<User> getAllByAddedWidget(String widgetId) {
- Query q = query(where("regions").elemMatch(where("regionWidgets").elemMatch(where("widgetId").is(widgetId))));
- List<Page> pages = pageTemplate.find(q);
- Set<String> userIds = Sets.newHashSet();
- for(Page p : pages) {
- if(!userIds.contains(p.getOwnerId())){
- userIds.add(p.getOwnerId());
- }
- }
- return getUsersById(userIds);
+ return getUsersById(statisticsAggregator.getUsersWithWidget(widgetId));
}
@Override
@@ -124,7 +113,7 @@ public class MongoDbUserRepository imple
@Override
public void delete(User item) {
- template.remove(query(where("_id").is(massageToObjectId(item.getId()))));
+ template.remove(query(where("_id").is(item.getId())));
}
private List<User> getUsersById(Collection<String> userIds) {
@@ -149,7 +138,7 @@ public class MongoDbUserRepository imple
this.template = template;
}
- public void setPageTemplate(MongoPageTemplate pageTemplate) {
- this.pageTemplate = pageTemplate;
+ public void setStatisticsAggregator(StatisticsAggregator statisticsAggregator) {
+ this.statisticsAggregator = statisticsAggregator;
}
}
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbWidgetRepository.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbWidgetRepository.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbWidgetRepository.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbWidgetRepository.java Tue Jan 1 01:09:57 2013
@@ -182,7 +182,7 @@ public class MongoDbWidgetRepository imp
@Override
public void delete(Widget item) {
- template.remove(new Query(where("_id").is(massageToObjectId(item.getId()))));
+ template.remove(new Query(where("_id").is(item.getId())));
}
/*
@@ -221,7 +221,10 @@ public class MongoDbWidgetRepository imp
@Override
public WidgetRating updateWidgetRating(String widgetId, WidgetRating rating) {
- return null;
+ Widget widget = template.get(widgetId);
+ WidgetRating updated = updateRating(widget, rating);
+ save(widget);
+ return updated;
}
@Override
@@ -231,6 +234,17 @@ public class MongoDbWidgetRepository imp
template.save(widget);
}
+ private WidgetRating updateRating(Widget widget, WidgetRating rating) {
+ for(WidgetRating currentRating : widget.getRatings()) {
+ if(currentRating.getId().equals(rating.getId())) {
+ currentRating.setScore(rating.getScore());
+ currentRating.setUserId(rating.getUserId());
+ return currentRating;
+ }
+ }
+ return null;
+ }
+
private void removeRating(String ratingId, Widget widget) {
Iterator<WidgetRating> iterator = widget.getRatings().iterator();
while (iterator.hasNext()) {
@@ -444,7 +458,6 @@ public class MongoDbWidgetRepository imp
/*
* End WidgetComment Repository
*/
-
private Query getWidgetStatusFreeTextQuery(WidgetStatus widgetStatus, String type, String searchTerm) {
Criteria criteria = addFreeTextClause(searchTerm, new Criteria());
if (type != null && !type.isEmpty()) {
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbAuthorityConverterTest.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbAuthorityConverterTest.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbAuthorityConverterTest.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbAuthorityConverterTest.java Tue Jan 1 01:09:57 2013
@@ -57,7 +57,7 @@ public class MongoDbAuthorityConverterTe
MongoDbAuthority converted = authorityConverter.convert(authority);
assertNotNull(converted.getAuthority());
- assertNotNull(converted.getId());
+ //assertNotNull(converted.getId());
assertThat(converted.getAuthority(), is(sameInstance(authority.getAuthority())));
assertThat(converted.isDefaultForNewUser(), is(sameInstance(authority.isDefaultForNewUser())));
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverterTest.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverterTest.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverterTest.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverterTest.java Tue Jan 1 01:09:57 2013
@@ -102,6 +102,6 @@ public class MongoDbCategoryConverterTes
assertNull(converted.getLastModifiedUserId());
assertNull(converted.getCreatedUserId());
- assertNull(converted.getId());
+ assertNotNull(converted.getId());
}
}
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverterTest.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverterTest.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverterTest.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverterTest.java Tue Jan 1 01:09:57 2013
@@ -148,7 +148,7 @@ public class MongoDbPageTemplateConverte
MongoDbPageTemplate converted = pageTemplateConverter.convert(pageTemplate);
- assertNull(converted.getId());
+ assertNotNull(converted.getId());
assertNotNull(converted.getPageTemplateRegions());
assertNotNull(converted.getSubPageTemplates());
}
@@ -211,7 +211,7 @@ public class MongoDbPageTemplateConverte
MongoDbPageTemplate converted = pageTemplateConverter.convert(pageTemplate);
- assertNull(converted.getId());
+ assertNotNull(converted.getId());
}
@Test
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbPortalPreferenceConverterTest.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbPortalPreferenceConverterTest.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbPortalPreferenceConverterTest.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbPortalPreferenceConverterTest.java Tue Jan 1 01:09:57 2013
@@ -60,7 +60,7 @@ public class MongoDbPortalPreferenceConv
assertThat(converted.getKey(), is(equalTo("key")));
assertTrue(converted.getValues().isEmpty());
- assertNotNull(converted.getId());
+ //assertNotNull(converted.getId());
converted = converter.convert(mpp);
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverterTest.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverterTest.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverterTest.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverterTest.java Tue Jan 1 01:09:57 2013
@@ -185,7 +185,7 @@ public class MongoDbUserConverterTest {
source.setDefaultPageLayout(pageLayout);
converted = userConverter.convert(source);
- assertNotNull(converted.getId());
+ //assertNotNull(converted.getId());
assertThat(converted.getDefaultPageLayoutCode(), is(pageLayout.getCode()));
assertNull(source.getDefaultPageLayout());
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbUserRepositoryTest.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbUserRepositoryTest.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbUserRepositoryTest.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbUserRepositoryTest.java Tue Jan 1 01:09:57 2013
@@ -19,18 +19,19 @@
package org.apache.rave.portal.repository.impl;
+import com.google.common.collect.Sets;
import org.apache.rave.portal.model.MongoDbUser;
-import org.apache.rave.portal.model.Page;
import org.apache.rave.portal.model.User;
-import org.apache.rave.portal.model.impl.PageImpl;
import org.apache.rave.portal.model.impl.UserImpl;
import org.apache.rave.portal.repository.MongoUserOperations;
+import org.apache.rave.portal.repository.StatisticsAggregator;
import org.junit.Before;
import org.junit.Test;
import org.springframework.data.mongodb.core.query.Query;
import java.util.ArrayList;
import java.util.List;
+import java.util.Set;
import static org.easymock.EasyMock.*;
import static org.easymock.EasyMock.isA;
@@ -48,15 +49,15 @@ import static org.springframework.data.m
public class MongoDbUserRepositoryTest {
private MongoDbUserRepository userRepository;
private MongoUserOperations template;
- private MongoPageTemplate pageTemplate;
+ private StatisticsAggregator aggregator;
@Before
public void setup() {
userRepository = new MongoDbUserRepository();
template = createMock(MongoUserOperations.class);
- pageTemplate = createMock(MongoPageTemplate.class);
+ aggregator = createMock(StatisticsAggregator.class);
userRepository.setTemplate(template);
- userRepository.setPageTemplate(pageTemplate);
+ userRepository.setStatisticsAggregator(aggregator);
}
@Test
@@ -128,47 +129,20 @@ public class MongoDbUserRepositoryTest {
@Test
public void getAllByAddedWidget_Valid(){
- String widgetId = "123";
+ String widgetId = "123";
String ownerId = "ABC";
- List<Page> pages = new ArrayList<Page>();
- Page page = new PageImpl();
- page.setOwnerId(ownerId);
- pages.add(page);
- expect(pageTemplate.find(query(where("regions").elemMatch(where("regionWidgets").elemMatch(where("widgetId").is(widgetId)))))).andReturn(pages);
- replay(pageTemplate);
+ Set<String> userIds = Sets.newHashSet();
+ userIds.add(ownerId);
+
+ expect(aggregator.getUsersWithWidget(widgetId)).andReturn(userIds);
UserImpl owner = new UserImpl(ownerId);
expect(template.get(ownerId)).andReturn(owner);
- replay(template);
-
- List<User> users = userRepository.getAllByAddedWidget(widgetId);
-
- assertTrue(users.size() == pages.size());
- assertTrue(users.contains(owner));
- }
-
- @Test
- public void getAllByAddedWidget_ContainsOwner(){
- String widgetId = "123";
- String ownerId = "1234";
-
- List<Page> pages = new ArrayList<Page>();
- Page page = new PageImpl();
- Page page_2 = new PageImpl();
- page.setOwnerId(ownerId);
- page_2.setOwnerId(ownerId);
- pages.add(page);
- pages.add(page_2);
- expect(pageTemplate.find(query(where("regions").elemMatch(where("regionWidgets").elemMatch(where("widgetId").is(widgetId)))))).andReturn(pages);
- replay(pageTemplate);
- UserImpl user = new UserImpl(ownerId);
- expect(template.get(ownerId)).andReturn(user);
- replay(template);
+ replay(template, aggregator);
List<User> users = userRepository.getAllByAddedWidget(widgetId);
assertTrue(users.size() == 1);
- assertTrue(users.contains(user));
-
+ assertTrue(users.contains(owner));
}
@Test
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbWidgetRatingRepositoryTest.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbWidgetRatingRepositoryTest.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbWidgetRatingRepositoryTest.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MongoDbWidgetRatingRepositoryTest.java Tue Jan 1 01:09:57 2013
@@ -25,7 +25,6 @@ import org.apache.rave.portal.model.impl
import org.apache.rave.portal.model.impl.WidgetRatingImpl;
import org.apache.rave.portal.repository.MongoWidgetOperations;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Test;
import java.util.ArrayList;
@@ -33,6 +32,7 @@ import java.util.Arrays;
import java.util.List;
import static org.easymock.EasyMock.*;
+import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.sameInstance;
import static org.junit.Assert.*;
@@ -168,7 +168,7 @@ public class MongoDbWidgetRatingReposito
assertNull(ratingRepository.getRatingById(widgetId, id));
}
- @Test @Ignore("Fix Before Merge")
+ @Test
public void save_Id_Valid(){
WidgetRatingImpl item = new WidgetRatingImpl();
WidgetRatingImpl lookup = new WidgetRatingImpl();
@@ -183,15 +183,15 @@ public class MongoDbWidgetRatingReposito
Widget widget = new WidgetImpl();
widget.setRatings(Arrays.asList((WidgetRating)lookup));
- expect(template.get(id)).andReturn(widget);
+ expect(template.get(widgetId)).andReturn(widget);
expect(template.save(widget)).andReturn(widget);
replay(template);
WidgetRating widgetRating = ratingRepository.updateWidgetRating(widgetId, item);
- assertThat(item.getScore(), is(sameInstance(lookup.getScore())));
- assertThat(item.getUserId(), is(sameInstance(lookup.getUserId())));
- assertThat(item.getScore(), is(sameInstance(lookup.getScore())));
+ assertThat(item.getScore(), is(equalTo(lookup.getScore())));
+ assertThat(item.getUserId(), is(equalTo(lookup.getUserId())));
+ assertThat(item.getScore(), is(equalTo(lookup.getScore())));
assertThat(widgetRating, is(sameInstance((WidgetRating)lookup)));
}
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MonogoDbMapReduceStatisticsAggregatorTest.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MonogoDbMapReduceStatisticsAggregatorTest.java?rev=1427268&r1=1427267&r2=1427268&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MonogoDbMapReduceStatisticsAggregatorTest.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/test/java/org/apache/rave/portal/repository/impl/MonogoDbMapReduceStatisticsAggregatorTest.java Tue Jan 1 01:09:57 2013
@@ -270,10 +270,9 @@ public class MonogoDbMapReduceStatistics
assertThat(result.getTotalUserCount(), is(equalTo(0)));
}
- @Test
- @Ignore
+ @Test @Ignore
public void init_existing() {
- expect(mongoOperations.findById(eq(ID), eq(RunStatistics.class), eq(OPERATIONS))).andReturn(new RunStatistics(ID, System.currentTimeMillis() - DEFAULT_RESULT_VALIDITY));
+ expect(mongoOperations.findById(eq(ID), eq(RunStatistics.class), eq(OPERATIONS))).andReturn(new RunStatistics(ID, System.currentTimeMillis() - (DEFAULT_RESULT_VALIDITY * 1000)));
setMapReduceExpectations();
mongoOperations.save(isA(RunStatistics.class), eq(OPERATIONS));
expectLastCall();