Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,24 +1,29 @@
package org.reactome.server.graph.domain.model;

import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
import java.io.Serializable;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.ParameterizedType;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Objects;
import java.util.SortedSet;
import java.util.TreeSet;

import org.reactome.server.graph.domain.annotations.ReactomeProperty;
import org.reactome.server.graph.domain.annotations.ReactomeSchemaIgnore;
import org.reactome.server.graph.domain.annotations.ReactomeTransient;
import org.reactome.server.graph.domain.relationship.ModifiedList;
import org.reactome.server.graph.domain.result.DatabaseObjectLike;
import org.springframework.data.neo4j.core.schema.Id;
import org.springframework.data.neo4j.core.schema.Node;
import org.springframework.data.neo4j.core.schema.Relationship;
import org.springframework.lang.NonNull;

import java.io.Serializable;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.ParameterizedType;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Objects;
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;

/**
* DatabaseObject contains the minimum fields used to define an instance of an Reactome entry
Expand Down Expand Up @@ -62,13 +67,21 @@ public abstract class DatabaseObject implements Serializable, Comparable<Databas

@Relationship(type = "modified", direction = Relationship.Direction.INCOMING)
private InstanceEdit modified;

// This is a list of InstanceEdits that have modified this DatabaseObject.
// So that we can track all modifications, not just the most recent one.
@Relationship(type = "modifiedList", direction = Relationship.Direction.INCOMING)
private SortedSet<ModifiedList> modifiedList;

@Relationship(type = "stableIdentifier")
private StableIdentifier stableIdentifier;

public DatabaseObject() {
}

public DatabaseObject(Long dbId) {
this.dbId = dbId;
}
}

// @ReactomeSchemaIgnore
// public Long getId() {
Expand All @@ -79,6 +92,40 @@ public DatabaseObject(Long dbId) {
// this.id = id;
// }

public StableIdentifier getStableIdentifier() {
return stableIdentifier;
}

public void setStableIdentifier(StableIdentifier stableIdentifier) {
this.stableIdentifier = stableIdentifier;
}

public List<InstanceEdit> getModifiedList() {
if (this.modifiedList == null || this.modifiedList.isEmpty()) {
return null;
}

List<InstanceEdit> rtn = new ArrayList<>();
for (ModifiedList modified : this.modifiedList) {
rtn.add(modified.getInstanceEdit());
}
return rtn;
}

public void setModifiedList(List<InstanceEdit> modifiedList) {
if (modifiedList == null || modifiedList.isEmpty()) {
return;
}
this.modifiedList = new TreeSet<>();
int order = 0;
for (InstanceEdit instanceEdit : modifiedList) {
ModifiedList aux = new ModifiedList();
aux.setInstanceEdit(instanceEdit);
aux.setOrder(order++);
this.modifiedList.add(aux);
}
}

public Long getDbId() {
return dbId;
}
Expand Down
11 changes: 11 additions & 0 deletions src/main/java/org/reactome/server/graph/domain/model/Deleted.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ public class Deleted extends MetaDatabaseObject{
@Deprecated
@ReactomeProperty(originName = "deletedInstanceDB_ID")
private List<Integer> deletedInstanceDbId;

@ReactomeProperty(originName = "replacementInstanceDB_IDs")
private List<Integer> replacementInstanceDbIds;

public Deleted() {
}
Expand All @@ -34,6 +37,14 @@ public String getCuratorComment() {
return curatorComment;
}

public List<Integer> getReplacementInstanceDbIds() {
return replacementInstanceDbIds;
}

public void setReplacementInstanceDbIds(List<Integer> replacementInstanceDbIds) {
this.replacementInstanceDbIds = replacementInstanceDbIds;
}

public void setCuratorComment(String curatorComment) {
this.curatorComment = curatorComment;
}
Expand Down
11 changes: 11 additions & 0 deletions src/main/java/org/reactome/server/graph/domain/model/Event.java
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ public abstract class Event extends DatabaseObject implements Trackable, Deletab
private String releaseStatus;
@ReactomeProperty(addedField = true)
private String speciesName;
@ReactomeProperty(originName = "_doRelease")
private Boolean doRelease;

@Relationship(type = "authored", direction = Relationship.Direction.INCOMING)
private List<InstanceEdit> authored;
Expand Down Expand Up @@ -416,4 +418,13 @@ public List<UpdateTracker> getUpdateTrackers() {
public void setUpdateTrackers(List<UpdateTracker> updateTrackers) {
this.updateTrackers = updateTrackers;
}


public Boolean getDoRelease() {
return doRelease;
}

public void setDoRelease(Boolean doRelease) {
this.doRelease = doRelease;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

@SuppressWarnings("unused")
@Node
public class GO_BiologicalProcess extends GO_Term{
public class GO_BiologicalProcess extends GO_Term {

public GO_BiologicalProcess() {}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,13 +43,6 @@ public void setHasPart(List<GO_CellularComponent> hasPart) {
this.hasPart = hasPart;
}

public List<GO_CellularComponent> getInstanceOf() {
return instanceOf;
}

public void setInstanceOf(List<GO_CellularComponent> instanceOf) {
this.instanceOf = instanceOf;
}

public List<GO_CellularComponent> getSurroundedBy() {
return surroundedBy;
Expand Down
67 changes: 4 additions & 63 deletions src/main/java/org/reactome/server/graph/domain/model/GO_Term.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,73 +12,14 @@
*/
@SuppressWarnings("unused")
@Node
public abstract class GO_Term extends DatabaseObject{

@ReactomeProperty
private String accession;
// will be filled together with url
private String databaseName;
@ReactomeProperty
private String definition;
@ReactomeProperty
private String name;
@ReactomeProperty(addedField = true)
private String url;
@Relationship(type = "referenceDatabase")
private ReferenceDatabase referenceDatabase;
public abstract class GO_Term extends ExternalOntology {

public GO_Term() {}

public GO_Term(Long dbId) {
super(dbId);
}

public String getAccession() {
return accession;
super();
setDbId(dbId);
}

public void setAccession(String accession) {
this.accession = accession;
}

public String getDatabaseName() {
return databaseName;
}

public void setDatabaseName(String databaseName) {
this.databaseName = databaseName;
}

public String getDefinition() {
return definition;
}

public void setDefinition(String definition) {
this.definition = definition;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getUrl() {
return url;
}

public void setUrl(String url) {
this.url = url;
}

public ReferenceDatabase getReferenceDatabase() {
return referenceDatabase;
}

public void setReferenceDatabase(ReferenceDatabase referenceDatabase) {
this.referenceDatabase = referenceDatabase;
}
}

Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import org.reactome.server.graph.domain.annotations.ReactomeProperty;
import org.springframework.data.neo4j.core.schema.Node;
import org.springframework.data.neo4j.core.schema.Relationship;

@SuppressWarnings("unused")
@Node
Expand All @@ -19,9 +20,20 @@ public class LiteratureReference extends Publication {
private Integer volume;
@ReactomeProperty
private Integer year;

@Relationship(type = "retractionStatus")
private RetractionStatus retractionStatus;

public LiteratureReference() {}

public RetractionStatus getRetractionStatus() {
return retractionStatus;
}

public void setRetractionStatus(RetractionStatus retractionStatus) {
this.retractionStatus = retractionStatus;
}

public LiteratureReference(Long dbId) {
super(dbId);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
package org.reactome.server.graph.domain.model;

import java.util.List;

import org.reactome.server.graph.domain.annotations.ReactomeProperty;
import org.springframework.data.neo4j.core.schema.Node;
import org.springframework.data.neo4j.core.schema.Relationship;

@Node
public class PathwayDiagram extends DatabaseObject {

@Relationship(type = "representedPathway")
private List<Pathway> representedPathway;
@Relationship(type = "renderedInstance")
private List<DatabaseObject> renderedInstance;

@ReactomeProperty(addedField = true)
private String jsonFile; // JSON representation of the pathway diagram
@ReactomeProperty
private int width; // Width of the diagram
@ReactomeProperty
private int height; // Height of the diagram

public int getWidth() {
return width;
}

public void setWidth(int width) {
this.width = width;
}

public int getHeight() {
return height;
}

public void setHeight(int height) {
this.height = height;
}

public PathwayDiagram() {
super();
}

public String getJsonFile() {
return jsonFile;
}

public void setJsonFile(String jsonFile) {
this.jsonFile = jsonFile;
}

public List<Pathway> getRepresentedPathway() {
return representedPathway;
}

public void setRepresentedPathway(List<Pathway> representedPathway) {
this.representedPathway = representedPathway;
}

public List<DatabaseObject> getRenderedInstance() {
return renderedInstance;
}

public void setRenderedInstance(List<DatabaseObject> renderedInstance) {
this.renderedInstance = renderedInstance;
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package org.reactome.server.graph.domain.model;

import org.springframework.data.neo4j.core.schema.Node;

@Node
public class RetractionStatus extends ControlledVocabulary {

public RetractionStatus() {

}

}
Loading