annotate app/models/UserModel.java @ 45:0e8b6eda0a0e

commit
author one
date Thu, 04 Oct 2012 06:54:33 +0900
parents f78442777849
children c76b3b60eb18
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
2122c50278bd add Global.java, ande models/*
one
parents:
diff changeset
1 package models;
2122c50278bd add Global.java, ande models/*
one
parents:
diff changeset
2
20
34ea98c5a18c modified UserModel/getEdgeInUser
one
parents: 18
diff changeset
3 import java.util.ArrayList;
22
6506b8742343 modified getUser
one
parents: 21
diff changeset
4 import java.util.HashMap;
23
cad8e054fe4b modifying getConsensus action
one
parents: 22
diff changeset
5 import java.util.HashSet;
17
a134edaebf6f modified UserModel/appendRequests
one
parents: 13
diff changeset
6
7
2122c50278bd add Global.java, ande models/*
one
parents:
diff changeset
7 import com.tinkerpop.blueprints.Vertex;
18
one
parents: 17
diff changeset
8 import com.tinkerpop.gremlin.java.GremlinPipeline;
7
2122c50278bd add Global.java, ande models/*
one
parents:
diff changeset
9
2122c50278bd add Global.java, ande models/*
one
parents:
diff changeset
10 public class UserModel extends NodeModel {
8
7b314898fddd create action User.getUser()
one
parents: 7
diff changeset
11
7
2122c50278bd add Global.java, ande models/*
one
parents:
diff changeset
12
2122c50278bd add Global.java, ande models/*
one
parents:
diff changeset
13 public UserModel(Vertex vertex) {
2122c50278bd add Global.java, ande models/*
one
parents:
diff changeset
14 super(vertex);
2122c50278bd add Global.java, ande models/*
one
parents:
diff changeset
15 }
2122c50278bd add Global.java, ande models/*
one
parents:
diff changeset
16
18
one
parents: 17
diff changeset
17 private Object[] getEdgeInUser(String labels) {
one
parents: 17
diff changeset
18 GremlinPipeline<Vertex,Vertex> pipe = new GremlinPipeline<Vertex,Vertex>();
one
parents: 17
diff changeset
19 pipe.start(this.vertex).in(labels);
20
34ea98c5a18c modified UserModel/getEdgeInUser
one
parents: 18
diff changeset
20 ArrayList<Object> array = new ArrayList<Object>();
34ea98c5a18c modified UserModel/getEdgeInUser
one
parents: 18
diff changeset
21 for (Vertex v : pipe) {
34ea98c5a18c modified UserModel/getEdgeInUser
one
parents: 18
diff changeset
22 array.add(v.getId());
18
one
parents: 17
diff changeset
23 }
20
34ea98c5a18c modified UserModel/getEdgeInUser
one
parents: 18
diff changeset
24 if (array.size() == 0) return null;
34ea98c5a18c modified UserModel/getEdgeInUser
one
parents: 18
diff changeset
25 return array.toArray();
9
d050b7fb4cda create getUserRequests action
one
parents: 8
diff changeset
26 }
d050b7fb4cda create getUserRequests action
one
parents: 8
diff changeset
27
18
one
parents: 17
diff changeset
28 public Object[] getUserRequests() {
one
parents: 17
diff changeset
29 return getEdgeInUser(L_REQUEST);
one
parents: 17
diff changeset
30 }
one
parents: 17
diff changeset
31
one
parents: 17
diff changeset
32 public Object[] getUserClaims() {
21
e113f946c9c1 modified getUserClaims
one
parents: 20
diff changeset
33 return getEdgeInUser(L_AUTHOR);
10
a8ea4191fa99 modified User.java
one
parents: 9
diff changeset
34 }
17
a134edaebf6f modified UserModel/appendRequests
one
parents: 13
diff changeset
35
23
cad8e054fe4b modifying getConsensus action
one
parents: 22
diff changeset
36 public HashSet<Object> getClaimsAndRequests() {
24
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
37 Object[] requests = getUserRequests();
23
cad8e054fe4b modifying getConsensus action
one
parents: 22
diff changeset
38 Object[] claims = getUserClaims();
24
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
39 return makeSet(requests, claims);
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
40 }
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
41
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
42 private HashSet<Object> makeSet(Object[] obj1, Object[] obj2) {
23
cad8e054fe4b modifying getConsensus action
one
parents: 22
diff changeset
43 HashSet<Object> set = new HashSet<Object>();
24
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
44 if (obj1 != null)
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
45 for (Object o : obj1) set.add(o);
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
46 if (obj2 != null)
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
47 for (Object o : obj2) set.add(o);
23
cad8e054fe4b modifying getConsensus action
one
parents: 22
diff changeset
48 if (set.size() == 0) return null;
cad8e054fe4b modifying getConsensus action
one
parents: 22
diff changeset
49 return set;
24
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
50 }
36
5f7fcdf98380 create editClaim
one
parents: 32
diff changeset
51
25
97b249d9fad1 fix infinite loop on getConsensus Action
one
parents: 24
diff changeset
52 public HashMap<Object,Object[]> getUserInfo() {
97b249d9fad1 fix infinite loop on getConsensus Action
one
parents: 24
diff changeset
53 TPGraph tpGraph = TPGraph.getInstance();
24
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
54 Object[] requests = getUserRequests();
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
55 Object[] claims = getUserClaims();
22
6506b8742343 modified getUser
one
parents: 21
diff changeset
56 HashMap<Object,Object[]> hash = new HashMap<Object, Object[]>();
24
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
57 hash.put(NodeModel.REQUESTS, requests);
32
be6bbd4967e4 create createMentions
one
parents: 25
diff changeset
58 hash.put(NodeModel.CLAIM, claims);
24
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
59 HashSet<Object> set = makeSet(requests, claims);
81d1d7c7bcde create getConsensus action. but this action can not test because there is no createMention action.
one
parents: 23
diff changeset
60 hash.put(NodeModel.CONSENSUS, tpGraph.checkConsensus(set));
22
6506b8742343 modified getUser
one
parents: 21
diff changeset
61 return hash;
6506b8742343 modified getUser
one
parents: 21
diff changeset
62 }
10
a8ea4191fa99 modified User.java
one
parents: 9
diff changeset
63
7
2122c50278bd add Global.java, ande models/*
one
parents:
diff changeset
64 }