📄 annotation.java
字号:
package org.csbl.genome.model;
import java.io.StringReader;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.SortedMap;
import java.util.TreeMap;
import javax.xml.stream.XMLInputFactory;
import javax.xml.stream.XMLStreamReader;
/**
* @hibernate.class table="Annotation"
*
*/
public class Annotation extends TraceableBaseObject{
Long id;
Locus locus;
String definition;
String accessionNumber;
String version;
String GINumber;
String keywords;
SourceOrganism source;
List<Reference> references;
List<Feature> features;
List<Pathway> pathways;
long length;
SortedMap<Long,Sequence> sequenceData;
public Annotation() {
}
/**
* @hibernate.property
*/
public String getAccessionNumber() {
return accessionNumber;
}
public void setAccessionNumber(String accessionNumber) {
this.accessionNumber = accessionNumber;
}
/**
* @hibernate.property
* @return
*/
public String getDefinition() {
return definition;
}
public void setDefinition(String definition) {
this.definition = definition;
}
/**
* @return features list
*
* @hibernate.bag name="features" lazy="false" cascade="all"
* @hibernate.key column="annotation_id" not-null="true"
* @hibernate.collection-one-to-many class="org.csbl.genome.model.Feature"
*/
public List<Feature> getFeatures() {
return features;
}
public void setFeatures(List<Feature> features) {
this.features = features;
}
/**
* @hibernate.property
* @return
*/
public String getGINumber() {
return GINumber;
}
public void setGINumber(String number) {
GINumber = number;
}
/**
* @return the id
* @hibernate.id column="id"
* generator-class="native" unsaved-value="null"
*/
public Long getId() {
return id;
}
/**
* @hibernate.property
* @return
*/
public String getKeywords() {
return keywords;
}
public void setKeywords(String keywords) {
this.keywords = keywords;
}
public Locus getLocus() {
return locus;
}
public void setLocus(Locus locus) {
this.locus = locus;
}
public List<Reference> getReferences() {
return references;
}
public void setReferences(List<Reference> references) {
this.references = references;
}
public SourceOrganism getSource() {
return source;
}
public void setSource(SourceOrganism source) {
this.source = source;
}
/**
* @hibernate.property
* @return
*/
public String getVersion() {
return version;
}
public void setVersion(String version) {
this.version = version;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return definition;
}
@Override
public boolean equals(Object o) {
boolean equal = false;
if (o instanceof Annotation) {
if (((Annotation)o).id.equals(this.id)) {
equal = true;
}
}
return equal;
}
@Override
public int hashCode() {
// TODO Auto-generated method stub
return id.hashCode();
}
public void setId(Long id) {
this.id = id;
}
/**
* @hibernate.property
* @return
*/
public long getLength() {
return length;
}
public void setLength(long length) {
this.length = length;
}
/**
* @hibernate.map name="sequence" lazy="true" cascade="all" sort="natural"
* @hibernate.key column="annotation_id" not-null="true"
* @hibernate.one-to-many class="org.csbl.genome.model.Sequence"
* @hibernate.map-key formula="start" type="long"
* @return
*/
public SortedMap<Long, Sequence> getSequenceData() {
return sequenceData;
}
public void setSequenceData(SortedMap<Long, Sequence> sequenceData) {
this.sequenceData = sequenceData;
}
// public String toXml() {
// //TODO implement it using XStream
//
// StringBuffer buffer = new StringBuffer();
// buffer.append("<annotation id=\"" + id + "\" definition=\"" + definition + "\" length=\"" + length + "\">");
// /*buffer.append("<sequenceData>");
// Iterator itr = sequenceData.values().iterator();
// int i=0;
// while(itr.hasNext()) {
// Sequence s = (Sequence)itr.next();
// buffer.append ("<line index=\"" + i + "\">");
// buffer.append (s.getBases());
// buffer.append ("</line>");
// i++;
// }
// buffer.append("</sequenceData>");*/
// /* buffer.append ("<features>");
// if (features != null) {
// for (Iterator iter = features.iterator(); iter.hasNext();) {
// Feature f = (Feature) iter.next();
// buffer.append ("<feature id=\"" + f.getId() + "\" name=\"" + f.getName() + "\" type=\"" + f.getType() + "\" frame=\"" + f.frame + "\" complement=\"" + f.isComplement() + "\">");
// buffer.append ("<location>");
// Location l = f.getLocation();
// if (l != null && l.getRangeList() != null) {
// for (Iterator iterator = l.getRangeList().iterator(); iterator
// .hasNext();) {
// Range r = (Range) iterator.next();
// buffer.append("<range start=\"" + r.getStart() + "\" end=\"" + r.getEnd() + "\"/>");
// }
// }
// buffer.append ("</location>");
// buffer.append ("</feature>");
//
// }
// }
// buffer.append ("</features>");*/
// buffer.append("<sequenceData>");
// if(sequenceData != null)
// {
// Iterator itr = sequenceData.keySet().iterator();
// while(itr.hasNext()) {
// Long i = (Long)itr.next();
// Sequence s = (Sequence)sequenceData.get(i);
//// buffer.append ("<line index=\"" + i + "\">");
//// buffer.append (s.getBases());
//// buffer.append ("</line>");
// s.getBases();
//
// }
// }
//
//// Iterator itr = sequenceData.values().iterator();
//// int i=1;
//// while(itr.hasNext()) {
//// Sequence s = (Sequence)itr.next();
//// buffer.append ("<line index=\"" + i + "\">");
//// buffer.append (s.getBases());
//// buffer.append ("</line>");
//// i=i+s.getBases().length();
//// }
// buffer.append("</sequenceData>");
// buffer.append ("<features>");
// if (features != null) {
// for (Iterator iter = features.iterator(); iter.hasNext();) {
// Feature f = (Feature) iter.next();
// buffer.append ("<feature id=\"" + f.getId() + "\" name=\"" + f.getName() + "\" type=\"" + f.getType() + "\" frame=\"" + f.frame + "\" complement=\"" + f.isComplement() + "\">");
// buffer.append ("<location>");
// Location l = f.getLocation();
// if (l != null && l.getRangeList() != null) {
// for (Iterator iterator = l.getRangeList().iterator(); iterator
// .hasNext();) {
// Range r = (Range) iterator.next();
// buffer.append("<range start=\"" + r.getStart() + "\" end=\"" + r.getEnd() + "\"/>");
// }
// }
// buffer.append ("</location>");
// //protein sequence
// buffer.append("<proteinSequence>");
// Map<Long, ProteinSequence> proteinSequence = f.getProteinSequence();
// if(proteinSequence!= null && proteinSequence.size()!=0)
// {
// Iterator itr = proteinSequence.keySet().iterator();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -