diff --git a/src/main/java/org/wikitolearn/wikirating/model/Page.java b/src/main/java/org/wikitolearn/wikirating/model/Page.java index cc73ead..d1df2ec 100644 --- a/src/main/java/org/wikitolearn/wikirating/model/Page.java +++ b/src/main/java/org/wikitolearn/wikirating/model/Page.java @@ -1,116 +1,152 @@ /** * */ package org.wikitolearn.wikirating.model; import org.neo4j.ogm.annotation.GraphId; import org.neo4j.ogm.annotation.Index; import org.neo4j.ogm.annotation.NodeEntity; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import org.neo4j.ogm.annotation.Relationship; /** * * @author aletundo, valsdav * */ @JsonIgnoreProperties(ignoreUnknown = true) @NodeEntity( label = "Page") public class Page { @GraphId private Long graphId; private int pageid; private String title; private String lang; @Index(unique = true, primary=true) private String langPageId; private double pageRank; + @Relationship(type = "LAST_REVISION", direction = Relationship.OUTGOING) + private Revision lastRevision; + @Relationship(type = "FIRST_REVISION", direction= Relationship.OUTGOING) + private Revision fistRevision; /** * */ public Page() { } /** * @param title * @param pageid * @param pageRank */ public Page(String title, int pageid, double pageRank) { this.title = title; this.pageid = pageid; this.pageRank = pageRank; } /** * @return the title */ public String getTitle() { return title; } /** * @param title the title to set */ public void setTitle(String title) { this.title = title; } /** * @return the pageid */ public int getPageid() { return pageid; } /** * @param pageid the pageid to set */ public void setPageid(int pageid) { this.pageid = pageid; } /** * @return the pageRank */ public double getPageRank() { return pageRank; } /** * @param pageRank the pageRank to set */ public void setPageRank(double pageRank) { this.pageRank = pageRank; } /** * @return the lang */ public String getLang() { return lang; } /** * @param lang the lang to set */ public void setLang(String lang) { this.lang = lang; } /** * @return the langPageId */ public String getLangPageId() { return langPageId; } /** * @param langPageId the langPageId to set */ public void setLangPageId(String langPageId) { this.langPageId = langPageId; } - /* (non-Javadoc) - * @see java.lang.Object#toString() - */ - @Override - public String toString() { - return "Page [title=" + title + ", pageid=" + pageid + ", pageRank=" + pageRank + "]"; - } + /** + * + * @return + */ + public Revision getLastRevision() { + return lastRevision; + } + + /** + * + * @param lastRevision + */ + public void setLastRevision(Revision lastRevision) { + this.lastRevision = lastRevision; + } + + /** + * + * @return + */ + public Revision getFistRevision() { + return fistRevision; + } + + /** + * + * @param fistRevision + */ + public void setFistRevision(Revision fistRevision) { + this.fistRevision = fistRevision; + } + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Page [title=" + title + ", pageid=" + pageid + ", pageRank=" + pageRank + "]"; + } } diff --git a/src/main/java/org/wikitolearn/wikirating/model/Revision.java b/src/main/java/org/wikitolearn/wikirating/model/Revision.java index b6bf055..bbd2db3 100644 --- a/src/main/java/org/wikitolearn/wikirating/model/Revision.java +++ b/src/main/java/org/wikitolearn/wikirating/model/Revision.java @@ -1,281 +1,300 @@ package org.wikitolearn.wikirating.model; import org.neo4j.ogm.annotation.GraphId; import org.neo4j.ogm.annotation.Index; import org.neo4j.ogm.annotation.NodeEntity; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import org.neo4j.ogm.annotation.Relationship; /** * This class handles the data of the Revision of a page. * Created by valsdav on 14/03/17. */ @JsonIgnoreProperties(ignoreUnknown = true) @NodeEntity( label = "Revision" ) public class Revision { @GraphId private Long graphId; private int revid; private int userid; private int parentid; private long length; private double changeCoefficient; private double currentMeanVote; private double currentVotesReliability; private double currentNormalisesVotesReliability; private double totalMeanVote; private double totalVotesReliability; private double totalNormalisesVotesReliability; private boolean validated; private String lang; @Index(unique = true, primary=true) private String langRevId; + @Relationship(type="PREVIOUS_REVISION", direction = Relationship.OUTGOING) + private Revision previousRevision; /** * */ public Revision() {} /** * @param revid * @param userid * @param parentid * @param length * @param changeCoefficient * @param currentMeanVote * @param currentVotesReliability * @param currentNormalisesVotesReliability * @param totalMeanVote * @param totalVotesReliability * @param totalNormalisesVotesReliability * @param validated * @param lang */ public Revision(int revid, int userid, int parentid, long length, double changeCoefficient, double currentMeanVote, double currentVotesReliability, double currentNormalisesVotesReliability, double totalMeanVote, double totalVotesReliability, double totalNormalisesVotesReliability, boolean validated, String lang) { this.revid = revid; this.userid = userid; this.parentid = parentid; this.length = length; this.changeCoefficient = changeCoefficient; this.currentMeanVote = currentMeanVote; this.currentVotesReliability = currentVotesReliability; this.currentNormalisesVotesReliability = currentNormalisesVotesReliability; this.totalMeanVote = totalMeanVote; this.totalVotesReliability = totalVotesReliability; this.totalNormalisesVotesReliability = totalNormalisesVotesReliability; this.validated = validated; this.lang = lang; } /** * @return the revid */ public int getRevid() { return revid; } /** * @param revid the revid to set */ public void setRevid(int revid) { this.revid = revid; } /** * @return the userid */ public int getUserid() { return userid; } /** * @param userid the userid to set */ public void setUserid(int userid) { this.userid = userid; } /** * @return the parentid */ public int getParentid() { return parentid; } /** * @param parentid the parentid to set */ public void setParentid(int parentid) { this.parentid = parentid; } /** * @return the length */ public long getLength() { return length; } /** * @param length the length to set */ public void setLength(long length) { this.length = length; } /** * @return the changeCoefficient */ public double getChangeCoefficient() { return changeCoefficient; } /** * @param changeCoefficient the changeCoefficient to set */ public void setChangeCoefficient(double changeCoefficient) { this.changeCoefficient = changeCoefficient; } /** * @return the currentMeanVote */ public double getCurrentMeanVote() { return currentMeanVote; } /** * @param currentMeanVote the currentMeanVote to set */ public void setCurrentMeanVote(double currentMeanVote) { this.currentMeanVote = currentMeanVote; } /** * @return the currentVotesReliability */ public double getCurrentVotesReliability() { return currentVotesReliability; } /** * @param currentVotesReliability the currentVotesReliability to set */ public void setCurrentVotesReliability(double currentVotesReliability) { this.currentVotesReliability = currentVotesReliability; } /** * @return the currentNormalisesVotesReliability */ public double getCurrentNormalisesVotesReliability() { return currentNormalisesVotesReliability; } /** * @param currentNormalisesVotesReliability the currentNormalisesVotesReliability to set */ public void setCurrentNormalisesVotesReliability(double currentNormalisesVotesReliability) { this.currentNormalisesVotesReliability = currentNormalisesVotesReliability; } /** * @return the totalMeanVote */ public double getTotalMeanVote() { return totalMeanVote; } /** * @param totalMeanVote the totalMeanVote to set */ public void setTotalMeanVote(double totalMeanVote) { this.totalMeanVote = totalMeanVote; } /** * @return the totalVotesReliability */ public double getTotalVotesReliability() { return totalVotesReliability; } /** * @param totalVotesReliability the totalVotesReliability to set */ public void setTotalVotesReliability(double totalVotesReliability) { this.totalVotesReliability = totalVotesReliability; } /** * @return the totalNormalisesVotesReliability */ public double getTotalNormalisesVotesReliability() { return totalNormalisesVotesReliability; } /** * @param totalNormalisesVotesReliability the totalNormalisesVotesReliability to set */ public void setTotalNormalisesVotesReliability(double totalNormalisesVotesReliability) { this.totalNormalisesVotesReliability = totalNormalisesVotesReliability; } /** * @return the validated */ public boolean isValidated() { return validated; } /** * @param validated the validated to set */ public void setValidated(boolean validated) { this.validated = validated; } /** * @return the lang */ public String getLang() { return lang; } /** * @param lang the lang to set */ public void setLang(String lang) { this.lang = lang; } /** * @return the langRevId */ public String getLangRevId() { return langRevId; } /** * @param langRevId the langRevId to set */ public void setLangRevId(String langRevId) { this.langRevId = langRevId; } - /* (non-Javadoc) - * @see java.lang.Object#toString() + /** + * + * @return */ + public Revision getPreviousRevision() { + return previousRevision; + } + + /** + * + * @param previousRevision + */ + public void setPreviousRevision(Revision previousRevision) { + this.previousRevision = previousRevision; + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ @Override public String toString() { return "Revision [graphId=" + graphId + ", revid=" + revid + ", userid=" + userid + ", parentid=" + parentid + ", length=" + length + ", changeCoefficient=" + changeCoefficient + ", currentMeanVote=" + currentMeanVote + ", currentVotesReliability=" + currentVotesReliability + ", currentNormalisesVotesReliability=" + currentNormalisesVotesReliability + ", totalMeanVote=" + totalMeanVote + ", totalVotesReliability=" + totalVotesReliability + ", totalNormalisesVotesReliability=" + totalNormalisesVotesReliability + ", validated=" + validated + ", lang=" + lang + ", langRevId=" + langRevId + "]"; } } \ No newline at end of file diff --git a/src/main/java/org/wikitolearn/wikirating/model/User.java b/src/main/java/org/wikitolearn/wikirating/model/User.java index 289291c..03d0612 100644 --- a/src/main/java/org/wikitolearn/wikirating/model/User.java +++ b/src/main/java/org/wikitolearn/wikirating/model/User.java @@ -1,129 +1,150 @@ /** * */ package org.wikitolearn.wikirating.model; import org.neo4j.ogm.annotation.GraphId; import org.neo4j.ogm.annotation.Index; import org.neo4j.ogm.annotation.NodeEntity; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import org.neo4j.ogm.annotation.Relationship; + +import java.util.Set; /** * @author aletundo, valsdav * */ @NodeEntity( label = "User") @JsonIgnoreProperties(ignoreUnknown = true) public class User { @GraphId private Long graphId; @JsonProperty("name") private String username; @Index(unique=true,primary = true) private int userid; private double votesReliability; private double contributesReliability; private double totalReliability; + @Relationship( type="AUTHOR", direction = Relationship.OUTGOING) + private Set pagesAuthored; /** * */ public User() {} /** * @param username * @param userid * @param votesReliability * @param contributesReliability * @param totalReliability */ public User(String username, int userid, double votesReliability, double contributesReliability, double totalReliability) { this.username = username; this.userid = userid; this.votesReliability = votesReliability; this.contributesReliability = contributesReliability; this.totalReliability = totalReliability; } /** * @return the username */ public String getUsername() { return username; } /** * @param username the username to set */ public void setUsername(String username) { this.username = username; } /** * @return the userid */ public int getUserid() { return userid; } /** * @param userid the userid to set */ public void setUserId(int userid) { this.userid = userid; } /** * @return the votesReliability */ public double getVotesReliability() { return votesReliability; } /** * @param votesReliability the votesReliability to set */ public void setVotesReliability(double votesReliability) { this.votesReliability = votesReliability; } /** * @return the contributesReliability */ public double getContributesReliability() { return contributesReliability; } /** * @param contributesReliability the contributesReliability to set */ public void setContributesReliability(double contributesReliability) { this.contributesReliability = contributesReliability; } /** * @return the totalReliability */ public double getTotalReliability() { return totalReliability; } /** * @param totalReliability the totalReliability to set */ public void setTotalReliability(double totalReliability) { this.totalReliability = totalReliability; } - /* (non-Javadoc) - * @see java.lang.Object#toString() + /** + * + * @return + */ + public Set getPagesAuthored() { + return pagesAuthored; + } + + /** + * + * @param pagesAuthored */ + public void setPagesAuthored(Set pagesAuthored) { + this.pagesAuthored = pagesAuthored; + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ @Override public String toString() { return "User [username=" + username + ", userid=" + userid + ", votesReliability=" + votesReliability + ", contributesReliability=" + contributesReliability + ", totalReliability=" + totalReliability + "]"; } }