001/*
002 *                    BioJava development code
003 *
004 * This code may be freely distributed and modified under the
005 * terms of the GNU Lesser General Public Licence.  This should
006 * be distributed with the code.  If you do not have a copy,
007 * see:
008 *
009 *      http://www.gnu.org/copyleft/lesser.html
010 *
011 * Copyright for this code is held jointly by the individual
012 * authors.  These should be listed in @author doc comments.
013 *
014 * For more information on the BioJava project and its aims,
015 * or to join the biojava-l mailing list, visit the home page
016 * at:
017 *
018 *      http://www.biojava.org/
019 *
020 */
021package org.biojava.nbio.core.sequence.io.embl;
022
023/**
024 * This class contains the processed data of embl file that
025 * contains the referenceNumber, referenceComment, referencePosition
026 * referenceCrossReference, referenceGroup, referenceAuthor
027 * referenceTitle, referenceLocation
028 *
029 * @author Noor Aldeen Al Mbaidin
030 * @since 5.0.0
031 */
032public class EmblReference {
033
034
035        private String referenceNumber;
036        private String referenceComment;
037        private String referencePosition;
038        private String referenceCrossReference;
039        private String referenceGroup;
040        private String referenceAuthor;
041        private String referenceTitle;
042        private String referenceLocation;
043
044        /**
045         * The RN (Reference Number) line gives a unique number to each reference
046         * Citation within an entry. This number is used to designate the reference
047         * in comments and in the feature table.
048         *
049         * @return referenceNumber
050         */
051        public String getReferenceNumber() {
052                return referenceNumber;
053        }
054
055        public void setReferenceNumber(String referenceNumber) {
056                this.referenceNumber = referenceNumber;
057        }
058
059        /**
060         * The RC (Reference Comment) linetype is an optional linetype which appears if
061         * The reference has a comment.
062         *
063         * @return String
064         */
065        public String getReferenceComment() {
066                return referenceComment;
067        }
068
069        public void setReferenceComment(String referenceComment) {
070                this.referenceComment = referenceComment;
071        }
072
073        /**
074         * The RP (Reference Position) linetype is
075         * an optional linetype which appears if
076         * one or more contiguous base spans of
077         * the presented sequence can be attributed
078         * to the reference in question.
079         *
080         * @return String
081         */
082        public String getReferencePosition() {
083                return referencePosition;
084        }
085
086        public void setReferencePosition(String referencePosition) {
087                this.referencePosition = referencePosition;
088        }
089
090        /**
091         * The RX (reference cross-reference) linetype is
092         * an optional linetype which appears if
093         * one or more contiguous base spans of the
094         * presented sequence can be attributed
095         * to the reference in question.
096         *
097         * @return String
098         */
099        public String getReferenceCrossReference() {
100                return referenceCrossReference;
101        }
102
103        public void setReferenceCrossReference(String referenceCrossReference) {
104                this.referenceCrossReference = referenceCrossReference;
105        }
106
107        /**
108         * The RG (Reference Group) lines list the working groups/consortia that
109         * produced the record.
110         *
111         * @return String
112         */
113        public String getReferenceGroup() {
114                return referenceGroup;
115        }
116
117        public void setReferenceGroup(String referenceGroup) {
118                this.referenceGroup = referenceGroup;
119        }
120
121        /**
122         * The RA (Reference Author) lines list the authors of the paper (or other
123         * work) cited. All of the authors are included, and are listed in the order
124         * given in the paper.
125         *
126         * @return String
127         */
128        public String getReferenceAuthor() {
129                return referenceAuthor;
130        }
131
132        public void setReferenceAuthor(String referenceAuthor) {
133                this.referenceAuthor = referenceAuthor;
134        }
135
136        /**
137         * The RT (Reference Title) lines give the title of the paper (or other work) as
138         * exactly as is possible given the limitations of computer character sets.
139         *
140         * @return String
141         */
142        public String getReferenceTitle() {
143                return referenceTitle;
144        }
145
146        public void setReferenceTitle(String referenceTitle) {
147                this.referenceTitle = referenceTitle;
148        }
149
150        /**
151         * The RL (Reference Location) line contains the conventional citation
152         * information for the reference.
153         *
154         * @return String
155         */
156        public String getReferenceLocation() {
157                return referenceLocation;
158        }
159
160        public void setReferenceLocation(String referenceLocation) {
161                this.referenceLocation = referenceLocation;
162        }
163
164        /**
165         * return copy of EmblReference
166         *
167         * @param emblReference
168         * @return EmblReference
169         */
170        public EmblReference copyEmblReference(EmblReference emblReference) {
171                EmblReference copy = new EmblReference();
172                copy.setReferenceAuthor(emblReference.getReferenceAuthor());
173                copy.setReferenceComment(emblReference.getReferenceComment());
174                copy.setReferenceCrossReference(emblReference.getReferenceCrossReference());
175                copy.setReferenceGroup(emblReference.getReferenceGroup());
176                copy.setReferenceLocation(emblReference.getReferenceLocation());
177                copy.setReferenceNumber(emblReference.getReferenceNumber());
178                copy.setReferencePosition(emblReference.getReferencePosition());
179                copy.setReferenceTitle(emblReference.getReferenceTitle());
180                return copy;
181        }
182
183}