Coverage Report - de.glossmaker.bib.datastructure.TechReport
 
Classes in this File Line Coverage Branch Coverage Complexity
TechReport
100%
17/17
77%
14/18
2
 
 1  
 package de.glossmaker.bib.datastructure;
 2  
 
 3  
 import de.glossmaker.gloss.datastructure.IItem;
 4  
 
 5  
 /**
 6  
  * <p>This class implements the BibTeX <code>TECHREPORT</code> item.</p>
 7  
  * Required fields:
 8  
  * <ul>
 9  
  *          <li>author,</li>
 10  
  *   <li>institution,</li>
 11  
  *   <li>title,</li>
 12  
  *   <li>year.</li>
 13  
  *  </ul>
 14  
  *  Optional fields:
 15  
  *  <ul>
 16  
  *    <li>type,</li>
 17  
  *    <li>number,</li>
 18  
  *    <li>address,</li>
 19  
  *    <li>month,</li>
 20  
  *    <li>publisher,</li>
 21  
  *    <li>note.</li>
 22  
  *  </ul> 
 23  
  *  
 24  
  * @author Markus Flingelli
 25  
  *
 26  
  */
 27  
 public class TechReport extends ABibItem {
 28  
 
 29  
         TechReport(String key, EBibTeXReference reference) {
 30  50
                 super(key, reference);
 31  50
         }
 32  
         
 33  
         public TechReport(String key, String title, String author, String institution, String year) {
 34  3
                 super(key, EBibTeXReference.TECHREPORT);
 35  3
                 setTitle(title);
 36  3
                 setAuthor(author);
 37  3
                 setInstitution(institution);
 38  3
                 setYear(year);
 39  3
         }
 40  
         
 41  
         
 42  
         @Override
 43  
         public boolean isItemValid() {
 44  6
                 boolean result = getKey() != null && getKey().length() > 0;
 45  6
                 result &= getAuthor() != null && getAuthor().length() > 0;
 46  6
                 result &= getTitle() != null && getTitle().length() > 0;
 47  6
                 result &= getInstitution() != null && getInstitution().length() > 0;
 48  6
                 result &= getYear() != null;
 49  6
                 return result;
 50  
         }
 51  
         
 52  
         @Override
 53  
         public IItem cloneItem() {
 54  1
                 TechReport clone = new TechReport(getKey(), getTitle(), getAuthor(), getInstitution(), getYear());
 55  1
                 clone.setItemValues(this);
 56  1
                 return clone;
 57  
         }
 58  
 }