Clover icon

Coverage Report

  1. Project Clover database Wed Nov 13 2024 16:12:26 GMT
  2. Package jalview.renderer

File AnnotationRendererFactory.java

 

Coverage histogram

../../img/srcFileCovDistChart9.png
13% of files have more coverage

Code metrics

6
7
3
1
69
34
6
0.86
2.33
3
2

Classes

Class Line # Actions
AnnotationRendererFactory 30 7 6
0.812581.2%
 

Contributing tests

This file is covered by 84 tests. .

Source view

1    /*
2    * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3    * Copyright (C) $$Year-Rel$$ The Jalview Authors
4    *
5    * This file is part of Jalview.
6    *
7    * Jalview is free software: you can redistribute it and/or
8    * modify it under the terms of the GNU General Public License
9    * as published by the Free Software Foundation, either version 3
10    * of the License, or (at your option) any later version.
11    *
12    * Jalview is distributed in the hope that it will be useful, but
13    * WITHOUT ANY WARRANTY; without even the implied warranty
14    * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15    * PURPOSE. See the GNU General Public License for more details.
16    *
17    * You should have received a copy of the GNU General Public License
18    * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
19    * The Jalview Authors are detailed in the 'AUTHORS' file.
20    */
21    package jalview.renderer;
22   
23    import jalview.datamodel.AlignmentAnnotation;
24    import jalview.renderer.api.AnnotationRendererFactoryI;
25    import jalview.renderer.api.AnnotationRowRendererI;
26    import jalview.ws.datamodel.alphafold.PAEContactMatrix;
27   
28    import java.util.IdentityHashMap;
29   
 
30    public class AnnotationRendererFactory implements AnnotationRendererFactoryI
31    {
32   
33    private static AnnotationRendererFactoryI factory = null;
34   
 
35  2848 toggle public static AnnotationRendererFactoryI getRendererFactory()
36    {
37  2848 if (factory == null)
38    {
39  23 factory = new AnnotationRendererFactory();
40    }
41  2848 return factory;
42    }
43   
44    IdentityHashMap<Object, AnnotationRowRendererI> renderers = new IdentityHashMap<Object, AnnotationRowRendererI>();
45   
 
46  23 toggle public AnnotationRendererFactory()
47    {
48    // renderers.put)
49    }
50   
 
51  127 toggle @Override
52    public AnnotationRowRendererI getRendererFor(AlignmentAnnotation row)
53    {
54  127 if (row.graph == AlignmentAnnotation.CONTACT_MAP)
55    {
56    // TODO consider configuring renderer/etc according to the type of matrix
57    // bound to the annotation row - needs to be looked up in that case
58  127 if (PAEContactMatrix.PAEMATRIX.equals(row.getCalcId()))
59    {
60  127 return ContactMapRenderer.newPAERenderer();
61    }
62    // TODO add potential for configuring renderer directly from the
63    // annotation row and/or viewmodel
64   
65    }
66  0 return null;
67    }
68   
69    }