Author: mfranklin
Date: Thu Oct 25 20:14:12 2012
New Revision: 1402316
URL: http://svn.apache.org/viewvc?rev=1402316&view=rev
Log:
Fixed page user bugs
Modified:
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbUser.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/repository/impl/MongoDbPersonRepository.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-portal-resources/src/main/resources/initial-data.json
Modified:
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbUser.java
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbUser.java?rev=1402316&r1=1402315&r2=1402316&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbUser.java
(original)
+++
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbUser.java
Thu Oct 25 20:14:12 2012
@@ -37,7 +37,7 @@ import java.util.List;
/**
*/
@XmlAccessorType(value = XmlAccessType.FIELD)
-@JsonAutoDetect(value = JsonMethod.FIELD)
+@JsonAutoDetect(value = JsonMethod.FIELD, fieldVisibility =
JsonAutoDetect.Visibility.ANY)
public class MongoDbUser extends UserImpl {
private List<String> authorityCodes;
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=1402316&r1=1402315&r2=1402316&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
Thu Oct 25 20:14:12 2012
@@ -22,6 +22,7 @@ package org.apache.rave.portal.model.con
import com.google.common.collect.Lists;
import org.apache.rave.portal.model.*;
import org.apache.rave.portal.model.conversion.HydratingModelConverter;
+import org.apache.rave.portal.model.impl.RegionWidgetPreferenceImpl;
import org.apache.rave.portal.repository.PageLayoutRepository;
import org.apache.rave.portal.repository.UserRepository;
import org.apache.rave.portal.repository.WidgetRepository;
@@ -149,35 +150,49 @@ public class MongoDbPageConverter implem
regionWidget.setRegion(null);
regionWidget.setPreferences(sourceRegionWidget.getPreferences());
updatePreferences(regionWidget);
+ updateProperties(sourceRegionWidget, regionWidget);
return regionWidget;
}
private void updatePreferences(MongoDbRegionWidget regionWidget) {
- if (regionWidget.getPreferences() != null) {
- for (RegionWidgetPreference preference :
regionWidget.getPreferences()) {
- preference.setRegionWidgetId(regionWidget.getId());
+ List<RegionWidgetPreference> converted = Lists.newArrayList();
+ if(regionWidget.getPreferences() != null) {
+ for(RegionWidgetPreference preference :
regionWidget.getPreferences()) {
+ converted.add(convert(preference));
}
}
+ regionWidget.setPreferences(converted);
+ }
+
+ private RegionWidgetPreference convert(RegionWidgetPreference preference) {
+ RegionWidgetPreference converted = new RegionWidgetPreferenceImpl();
+ converted.setName(preference.getName());
+ converted.setValue(preference.getValue());
+ return converted;
}
private void hydrate(Region region) {
- if (region.getRegionWidgets() == null) {
- region.setRegionWidgets(Lists.<RegionWidget>newArrayList());
- } else {
- for (RegionWidget regionWidget : region.getRegionWidgets()) {
- hydrate((MongoDbRegionWidget) regionWidget, region);
- }
+ for (RegionWidget regionWidget : region.getRegionWidgets()) {
+ hydrate((MongoDbRegionWidget) regionWidget, region);
}
}
private void convert(Region region) {
+ List<RegionWidget> convertedWidgets = Lists.newArrayList();
if (region.getRegionWidgets() != null) {
- List<RegionWidget> convertedWidgets = Lists.newArrayList();
for (RegionWidget widget : region.getRegionWidgets()) {
convertedWidgets.add(convert(widget));
}
- region.setRegionWidgets(convertedWidgets);
}
+ region.setRegionWidgets(convertedWidgets);
+ }
+
+ private void updateProperties(RegionWidget source, RegionWidget converted)
{
+ converted.setLocked(source.isLocked());
+ converted.setCollapsed(source.isCollapsed());
+ converted.setHideChrome(source.isHideChrome());
+ converted.setRenderPosition(source.getRenderPosition());
+ converted.setRenderOrder(source.getRenderOrder());
}
}
Modified:
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPersonRepository.java
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPersonRepository.java?rev=1402316&r1=1402315&r2=1402316&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPersonRepository.java
(original)
+++
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPersonRepository.java
Thu Oct 25 20:14:12 2012
@@ -67,10 +67,10 @@ public class MongoDbPersonRepository imp
@Override
public List<Person> findFriends(String username) {
MongoDbUser user =
(MongoDbUser)template.findOne(getUsernameQuery(username));
- return Lists.transform(user.getFriends(), new
Function<MongoDbPersonAssociation, Person>() {
+ return Lists.transform(filterByRequestType(user.getFriends(),
FriendRequestStatus.ACCEPTED), new Function<MongoDbPersonAssociation, Person>()
{
@Override
public Person apply(@Nullable MongoDbPersonAssociation input) {
- return input == null || input.getRequestStatus() !=
FriendRequestStatus.ACCEPTED ? null :
template.get(input.getPersonId()).toPerson();
+ return input == null ? null :
template.get(input.getPersonId()).toPerson();
}
});
}
@@ -156,10 +156,10 @@ public class MongoDbPersonRepository imp
@Override
public List<Person> findFriendRequestsReceived(String username) {
MongoDbUser followed =
(MongoDbUser)template.findOne(getUsernameQuery(username));
- return Lists.transform(followed.getFriends(), new
Function<MongoDbPersonAssociation, Person>() {
+ return Lists.transform(filterByRequestType(followed.getFriends(),
FriendRequestStatus.RECEIVED), new Function<MongoDbPersonAssociation, Person>()
{
@Override
public Person apply(@Nullable MongoDbPersonAssociation input) {
- return input == null || input.getRequestStatus() !=
FriendRequestStatus.RECEIVED ? null :
template.get(input.getPersonId()).toPerson();
+ return input == null ? null :
template.get(input.getPersonId()).toPerson();
}
});
}
@@ -167,10 +167,10 @@ public class MongoDbPersonRepository imp
@Override
public List<Person> findFriendRequestsSent(String username) {
MongoDbUser follower =
(MongoDbUser)template.findOne(getUsernameQuery(username));
- return Lists.transform(follower.getFriends(), new
Function<MongoDbPersonAssociation, Person>() {
+ return Lists.transform(filterByRequestType(follower.getFriends(),
FriendRequestStatus.SENT), new Function<MongoDbPersonAssociation, Person>() {
@Override
public Person apply(@Nullable MongoDbPersonAssociation input) {
- return input == null || input.getRequestStatus() !=
FriendRequestStatus.SENT ? null : template.get(input.getPersonId()).toPerson();
+ return input == null ? null :
template.get(input.getPersonId()).toPerson();
}
});
}
@@ -200,6 +200,16 @@ public class MongoDbPersonRepository imp
return query(where("username").is(username));
}
+ private List<MongoDbPersonAssociation>
filterByRequestType(List<MongoDbPersonAssociation> friends, FriendRequestStatus
received) {
+ List<MongoDbPersonAssociation> filtered = Lists.newArrayList();
+ for(MongoDbPersonAssociation association : friends) {
+ if(association.getRequestStatus().equals(received)) {
+ filtered.add(association);
+ }
+ }
+ return filtered;
+ }
+
private void removeAssociation(MongoDbUser friend, MongoDbUser person) {
for(MongoDbPersonAssociation association : person.getFriends()) {
if(association.getPersonId().equals(friend.getId())) {
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=1402316&r1=1402315&r2=1402316&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
Thu Oct 25 20:14:12 2012
@@ -26,11 +26,13 @@ import org.apache.rave.portal.model.User
import org.apache.rave.portal.repository.MongoUserOperations;
import org.apache.rave.portal.repository.UserRepository;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Order;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Repository;
import java.util.List;
+import java.util.regex.Pattern;
import static org.springframework.data.mongodb.core.query.Criteria.where;
import static org.springframework.data.mongodb.core.query.Query.query;
@@ -122,7 +124,8 @@ public class MongoDbUserRepository imple
}
private Query getSearchQuery(String searchTerm) {
- return
query(where("username").is(searchTerm).orOperator(where("email").is(searchTerm)));
+ Pattern p = Pattern.compile(".*" + searchTerm +".*",
Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL);
+ return query(new Criteria().orOperator(where("username").regex(p),
where("email").regex(p)));
}
private Query addSort(Query query) {
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=1402316&r1=1402315&r2=1402316&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
Thu Oct 25 20:14:12 2012
@@ -221,14 +221,14 @@ public class MongoDbWidgetRepository imp
}
private Query getWidgetStatusFreeTextQuery(WidgetStatus widgetStatus,
String type, String searchTerm) {
- Criteria criteria = new Criteria();
- if(type != null) {
+ Criteria criteria = addFreeTextClause(searchTerm, new Criteria());
+ if(type != null && !type.isEmpty()) {
criteria.and("type").is(type);
}
if(widgetStatus != null) {
criteria.and("widgetStatus").is(getWidgetStatusString(widgetStatus));
}
- return query(addFreeTextClause(searchTerm, criteria));
+ return query(criteria);
}
private Criteria addFreeTextClause(String searchTerm, Criteria criteria) {
Modified:
rave/branches/mongo/rave-portal-resources/src/main/resources/initial-data.json
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-portal-resources/src/main/resources/initial-data.json?rev=1402316&r1=1402315&r2=1402316&view=diff
==============================================================================
---
rave/branches/mongo/rave-portal-resources/src/main/resources/initial-data.json
(original)
+++
rave/branches/mongo/rave-portal-resources/src/main/resources/initial-data.json
Thu Oct 25 20:14:12 2012
@@ -1985,7 +1985,7 @@
{
"pageTemplateRegion": null,
"widget": {"id": 2},
- "locked": true,
+ "locked": false,
"hideChrome": false,
"id": 3,
"renderSeq": 0
@@ -1993,7 +1993,7 @@
{
"pageTemplateRegion": null,
"widget": {"id": 7},
- "locked": true,
+ "locked": false,
"hideChrome": false,
"id": 4,
"renderSeq": 1
@@ -2009,7 +2009,7 @@
{
"pageTemplateRegion": null,
"widget": {"id": 10},
- "locked": true,
+ "locked": false,
"hideChrome": false,
"id": 3,
"renderSeq": 0
@@ -2017,7 +2017,7 @@
{
"pageTemplateRegion": null,
"widget": {"id": 23},
- "locked": true,
+ "locked": false,
"hideChrome": false,
"id": 4,
"renderSeq": 1
@@ -2033,7 +2033,7 @@
{
"pageTemplateRegion": null,
"widget": {"id": 11},
- "locked": true,
+ "locked": false,
"hideChrome": false,
"id": 3,
"renderSeq": 0