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();
+    }
 }