*/
public List<Sone> getFriends() {
List<Sone> friends = new ArrayList<Sone>(friendSones);
- Collections.sort(friends, new Comparator<Sone>() {
-
- @Override
- public int compare(Sone leftSone, Sone rightSone) {
- int diff = SoneAccessor.getNiceName(leftSone).compareToIgnoreCase(SoneAccessor.getNiceName(rightSone));
- if (diff != 0) {
- return diff;
- }
- return (int) Math.max(Integer.MIN_VALUE, Math.min(Integer.MAX_VALUE, rightSone.getTime() - leftSone.getTime()));
- }
- });
+ Collections.sort(friends, NICE_NAME_COMPARATOR);
return friends;
}
* @return All posts of this Sone
*/
public List<Post> getPosts() {
- List<Post> sortedPosts = new ArrayList<Post>(posts);
- Collections.sort(sortedPosts, new Comparator<Post>() {
-
- @Override
- public int compare(Post leftPost, Post rightPost) {
- return (int) Math.max(Integer.MIN_VALUE, Math.min(Integer.MAX_VALUE, rightPost.getTime() - leftPost.getTime()));
- }
-
- });
+ List<Post> sortedPosts;
+ synchronized (this) {
+ sortedPosts = new ArrayList<Post>(posts);
+ }
+ Collections.sort(sortedPosts, Post.TIME_COMPARATOR);
return sortedPosts;
}
*
* @return All replies this Sone made
*/
- public Set<Reply> getReplies() {
+ public synchronized Set<Reply> getReplies() {
return Collections.unmodifiableSet(replies);
}