Skip to content
Snippets Groups Projects
Commit cb86ac53 authored by felmer's avatar felmer
Browse files

SE-251 show protein coverage

SVN: 16282
parent 91089de7
No related branches found
No related tags found
No related merge requests found
Showing
with 59 additions and 5 deletions
......@@ -204,7 +204,7 @@ public class ProteinViewer extends AbstractViewer<IEntityInformationHolder> impl
String accessionNumber = info.getAccessionNumber();
TabItem item = new TabItem(accessionNumber);
item.setLayout(new FitLayout());
PropertyGrid propertyGrid = new PropertyGrid(viewContext, 3);
PropertyGrid propertyGrid = new PropertyGrid(viewContext, 4);
final Map<String, Object> properties = new LinkedHashMap<String, Object>();
properties.put(viewContext.getMessage(Dict.ACCESSION_NUMBER), info);
propertyGrid.registerPropertyValueRenderer(IndistinguishableProteinInfo.class,
......@@ -213,6 +213,7 @@ public class ProteinViewer extends AbstractViewer<IEntityInformationHolder> impl
.getDescription());
String markedSequence = markPeptides(info.getSequence(), peptides);
properties.put(viewContext.getMessage(Dict.SEQUENCE_NAME), markedSequence);
properties.put(viewContext.getMessage(Dict.COVERAGE), info.getCoverage());
propertyGrid.setProperties(properties);
ContentPanel contentPanel = new ContentPanel();
contentPanel.setHeight("100%");
......@@ -300,6 +301,8 @@ public class ProteinViewer extends AbstractViewer<IEntityInformationHolder> impl
String markedSequence =
markPeptides(proteinDetails.getSequence(), proteinDetails.getPeptides());
properties.put(viewContext.getMessage(Dict.SEQUENCE_NAME), markedSequence);
properties.put(viewContext.getMessage(Dict.COVERAGE), proteinDetails.getCoverage());
propertyGrid.registerPropertyValueRenderer(Peptide.class, PropertyValueRenderers
.createPeptideRenderer(viewContext));
......
......@@ -71,6 +71,7 @@ class ProteinDetailsBO extends AbstractBusinessObject implements IProteinDetails
details.setSequence(protein.getSequence());
details.setDatabaseNameAndVersion(protein.getDatabaseNameAndVersion());
details.setProbability(protein.getProbability());
details.setCoverage(100 * protein.getCoverage());
details.setFalseDiscoveryRate(protein.getFalseDiscoveryRate());
String dataSetPermID = protein.getDataSetPermID();
details.setDataSetPermID(dataSetPermID);
......@@ -108,6 +109,7 @@ class ProteinDetailsBO extends AbstractBusinessObject implements IProteinDetails
info.setAccessionNumberType(builder.getTypeOrNull());
info.setDescription(protein.getDescription());
info.setSequence(protein.getSequence());
info.setCoverage(100 * protein.getCoverage());
infos.add(info);
}
return infos;
......
......@@ -87,7 +87,7 @@ public interface IProteinQueryDAO extends BaseQuery
public DataSet<Sequence> listProteinSequencesByProteinReference(long proteinReferenceID);
@Select("select ds.id as data_set_id, ds.perm_id as data_set_perm_id, p.id as protein_id, "
+ "probability, count(pe.id) as peptide_count, amino_acid_sequence, s.db_id, name_and_version "
+ "probability, coverage, count(pe.id) as peptide_count, amino_acid_sequence, s.db_id, name_and_version "
+ "from data_sets as ds join experiments as e on ds.expe_id = e.id "
+ " join proteins as p on p.dase_id = ds.id "
+ " join identified_proteins as ip on ip.prot_id = p.id "
......@@ -95,7 +95,7 @@ public interface IProteinQueryDAO extends BaseQuery
+ " join databases as db on s.db_id = db.id "
+ " left join peptides as pe on pe.prot_id = p.id "
+ "where s.prre_id = ?{2} and e.perm_id = ?{1} and ip.is_primary = 't' "
+ "group by data_set_id, data_set_perm_id, protein_id, probability, "
+ "group by data_set_id, data_set_perm_id, protein_id, probability, coverage, "
+ " amino_acid_sequence, s.db_id, name_and_version order by data_set_perm_id")
public DataSet<IdentifiedProtein> listProteinsByProteinReferenceAndExperiment(
String experimentPermID, long proteinReferenceID);
......@@ -103,7 +103,7 @@ public interface IProteinQueryDAO extends BaseQuery
@Select("select * from peptides where prot_id = ?{1}")
public DataSet<IdentifiedPeptide> listIdentifiedPeptidesByProtein(long proteinID);
@Select("select accession_number, description, amino_acid_sequence "
@Select("select accession_number, description, amino_acid_sequence, coverage "
+ "from identified_proteins as ip join sequences as s on ip.sequ_id = s.id "
+ " join protein_references as pr on s.prre_id = pr.id "
+ "where ip.prot_id = ?{1} and ip.is_primary = 'f'")
......
......@@ -31,6 +31,8 @@ public class IndistinguishableProteinInfo extends AccessionNumberProvider
private String description;
private double coverage;
public final String getSequence()
{
return sequence;
......@@ -50,4 +52,14 @@ public class IndistinguishableProteinInfo extends AccessionNumberProvider
{
this.description = description;
}
public void setCoverage(double coverage)
{
this.coverage = coverage;
}
public double getCoverage()
{
return coverage;
}
}
......@@ -36,6 +36,8 @@ public class ProteinDetails implements IsSerializable, Serializable
private String databaseNameAndVersion;
private double probability;
private double coverage;
private double falseDiscoveryRate;
......@@ -86,6 +88,16 @@ public class ProteinDetails implements IsSerializable, Serializable
this.probability = probability;
}
public void setCoverage(double coverage)
{
this.coverage = coverage;
}
public double getCoverage()
{
return coverage;
}
public void setFalseDiscoveryRate(double falseDiscoveryRate)
{
this.falseDiscoveryRate = falseDiscoveryRate;
......
......@@ -51,6 +51,9 @@ public class IdentifiedProtein extends AbstractDTOWithID
@ResultColumn("probability")
private double probability;
@ResultColumn("coverage")
private double coverage;
private double falseDiscoveryRate;
public final String getDataSetPermID()
......@@ -113,6 +116,16 @@ public class IdentifiedProtein extends AbstractDTOWithID
this.probability = probability;
}
public void setCoverage(double coverage)
{
this.coverage = coverage;
}
public double getCoverage()
{
return coverage;
}
public final double getFalseDiscoveryRate()
{
return falseDiscoveryRate;
......
......@@ -30,6 +30,9 @@ public class IndistinguishableProtein extends ProteinReference
@ResultColumn("amino_acid_sequence")
private String sequence;
@ResultColumn("coverage")
private double coverage;
public void setSequence(String sequence)
{
this.sequence = sequence;
......@@ -40,4 +43,14 @@ public class IndistinguishableProtein extends ProteinReference
return sequence;
}
public void setCoverage(double coverage)
{
this.coverage = coverage;
}
public double getCoverage()
{
return coverage;
}
}
......@@ -81,5 +81,4 @@ public class ProteinReferenceWithProtein extends ProteinReference implements Ser
return coverage;
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment