You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rave.apache.org by er...@apache.org on 2013/07/29 18:12:10 UTC
svn commit: r1508121 - in /rave/trunk:
rave-components/rave-core/src/main/java/org/apache/rave/portal/repository/
rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/
rave-components/rave-jpa/src/main/java/org/apache/rave/portal/reposit...
Author: erinnp
Date: Mon Jul 29 16:12:10 2013
New Revision: 1508121
URL: http://svn.apache.org/r1508121
Log:
Person repository updates
Modified:
rave/trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/repository/PersonRepository.java
rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPerson.java
rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/repository/impl/JpaPersonRepository.java
rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPersonRepository.java
rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/opensocial/repository/impl/DecoratingOpenSocialPersonRepository.java
Modified: rave/trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/repository/PersonRepository.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/repository/PersonRepository.java?rev=1508121&r1=1508120&r2=1508121&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/repository/PersonRepository.java (original)
+++ rave/trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/repository/PersonRepository.java Mon Jul 29 16:12:10 2013
@@ -24,9 +24,10 @@ import java.util.List;
import org.apache.rave.repository.Repository;
import org.apache.rave.model.Person;
+import org.apache.rave.repository.ResourceRepository;
-public interface PersonRepository extends Repository<Person> {
+public interface PersonRepository extends Repository<Person>, ResourceRepository<Person> {
/**
* Gets a user by their username
*
Modified: rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPerson.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPerson.java?rev=1508121&r1=1508120&r2=1508121&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPerson.java (original)
+++ rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPerson.java Mon Jul 29 16:12:10 2013
@@ -37,6 +37,8 @@ import java.util.List;
@Table(name = "person")
@Access(AccessType.FIELD)
@NamedQueries(value = {
+ @NamedQuery(name = JpaPerson.GET_ALL, query = "select p from JpaPerson p"),
+ @NamedQuery(name = JpaPerson.GET_COUNT, query = "select count(p) from JpaPerson p where p.username like :username"),
@NamedQuery(name = JpaPerson.FIND_BY_USERNAME, query = "select p from JpaPerson p where p.username like :username"),
@NamedQuery(name = JpaPerson.FIND_FRIENDS_BY_USERNAME, query = "select a.followedby from JpaPersonAssociation a where a.follower.username = :username and a.status = :status")
})
@@ -47,6 +49,8 @@ public class JpaPerson implements BasicE
public static final String FIND_FRIENDS_BY_USERNAME = "Person.findFriendsByUsername";
public static final String USERNAME_PARAM = "username";
public static final String STATUS_PARAM = "status";
+ public static final String GET_ALL = "Person.getAll";
+ public static final String GET_COUNT = "Person.getCount";
@Id
@Column(name = "entity_id")
Modified: rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/repository/impl/JpaPersonRepository.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/repository/impl/JpaPersonRepository.java?rev=1508121&r1=1508120&r2=1508121&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/repository/impl/JpaPersonRepository.java (original)
+++ rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/repository/impl/JpaPersonRepository.java Mon Jul 29 16:12:10 2013
@@ -34,11 +34,13 @@ import org.springframework.stereotype.Re
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
+import javax.persistence.Query;
import javax.persistence.TypedQuery;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
+import static org.apache.rave.persistence.jpa.util.JpaUtil.getPagedResultList;
import static org.apache.rave.persistence.jpa.util.JpaUtil.getSingleResult;
import static org.apache.rave.persistence.jpa.util.JpaUtil.saveOrUpdate;
@@ -70,7 +72,7 @@ public class JpaPersonRepository impleme
connections.addAll(findFriends(username));
TypedQuery<JpaGroup> members = manager.createQuery("SELECT g from JpaGroup g where :userId member of g.members", JpaGroup.class);
members.setParameter("userId", personId);
- for(JpaGroup groups : members.getResultList()) {
+ for (JpaGroup groups : members.getResultList()) {
addPeopleByIds(groups, connections);
}
}
@@ -248,7 +250,7 @@ public class JpaPersonRepository impleme
return receiverItem.getEntityId() != null && senderItem.getEntityId() != null;
}
-
+
@Override
public int removeAllFriendsAndRequests(String userid) {
TypedQuery<JpaPersonAssociation> query = manager.createNamedQuery(JpaPersonAssociation.DELETE_ASSOCIATION_ITEMS_BY_USERID, JpaPersonAssociation.class);
@@ -272,4 +274,23 @@ public class JpaPersonRepository impleme
}
}
}
+
+ @Override
+ public List<Person> getAll() {
+ TypedQuery<Person> query = manager.createNamedQuery(JpaPerson.GET_ALL, Person.class);
+ return CollectionUtils.<Person>toBaseTypedList(query.getResultList());
+ }
+
+ @Override
+ public List<Person> getLimitedList(int offset, int limit) {
+ TypedQuery<Person> query = manager.createNamedQuery(JpaPerson.GET_ALL, Person.class);
+ return CollectionUtils.<Person>toBaseTypedList(getPagedResultList(query, offset, limit));
+ }
+
+ @Override
+ public int getCountAll() {
+ Query query = manager.createNamedQuery(JpaPerson.GET_COUNT);
+ Number countResult = (Number) query.getSingleResult();
+ return countResult.intValue();
+ }
}
Modified: rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPersonRepository.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPersonRepository.java?rev=1508121&r1=1508120&r2=1508121&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPersonRepository.java (original)
+++ rave/trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPersonRepository.java Mon Jul 29 16:12:10 2013
@@ -38,6 +38,7 @@ import org.springframework.data.mongodb.
import org.springframework.stereotype.Component;
import javax.annotation.Nullable;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -187,7 +188,7 @@ public class MongoDbPersonRepository imp
@Override
public int removeAllFriendsAndRequests(String userid) {
- MongoDbUser person = (MongoDbUser)template.get(userid);
+ MongoDbUser person = (MongoDbUser) template.get(userid);
int count = person.getFriends().size();
person.setFriends(Lists.<MongoDbPersonAssociation>newArrayList());
save(person);
@@ -301,4 +302,29 @@ public class MongoDbPersonRepository imp
public void setWidgetOperations(MongoWidgetOperations widgetOperations) {
this.widgetOperations = widgetOperations;
}
+
+ @Override
+ public List<Person> getAll() {
+ List<User> users = template.find(new Query());
+ ArrayList<Person> persons= new ArrayList<Person>();
+ for(User user : users) {
+ persons.add(user.toPerson());
+ }
+ return persons;
+ }
+
+ @Override
+ public List<Person> getLimitedList(int offset, int limit) {
+ List<User> users = template.find(new Query().skip(offset).limit(limit));
+ ArrayList<Person> persons= new ArrayList<Person>();
+ for(User user : users) {
+ persons.add(user.toPerson());
+ }
+ return persons;
+ }
+
+ @Override
+ public int getCountAll() {
+ return (int) template.count(new Query());
+ }
}
Modified: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/opensocial/repository/impl/DecoratingOpenSocialPersonRepository.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/opensocial/repository/impl/DecoratingOpenSocialPersonRepository.java?rev=1508121&r1=1508120&r2=1508121&view=diff
==============================================================================
--- rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/opensocial/repository/impl/DecoratingOpenSocialPersonRepository.java (original)
+++ rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/opensocial/repository/impl/DecoratingOpenSocialPersonRepository.java Mon Jul 29 16:12:10 2013
@@ -157,4 +157,19 @@ public class DecoratingOpenSocialPersonR
public int removeAllFriendsAndRequests(String userid) {
return underlying.removeAllFriendsAndRequests(userid);
}
+
+ @Override
+ public List<Person> getAll() {
+ throw new NotSupportedException();
+ }
+
+ @Override
+ public List<Person> getLimitedList(int offset, int limit) {
+ throw new NotSupportedException();
+ }
+
+ @Override
+ public int getCountAll() {
+ throw new NotSupportedException();
+ }
}