Source code

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 */
021
022package org.biojavax;
023
024import java.util.Set;
025
026import org.biojava.utils.ChangeVetoException;
027import org.biojava.utils.Changeable;
028
029/**
030 * Defines an object as being able to have ranked cross references associated
031 * with it. 
032 * @author Richard Holland
033 * @see RankedCrossRef
034 * @since 1.5
035 */
036public interface RankedCrossRefable extends Changeable {
037 
038 /**
039 * Returns the set of all ranked cross references associated with an object.
040 * @return a set of RankedCrossRef objects.
041 */
042 public Set<RankedCrossRef> getRankedCrossRefs();
043 
044 /** 
045 * Sets the ranked cross references associated with an object. Null will 
046 * throw an exception but the empty set is fine.
047 * @param crossrefs a set of RankedCrossRef objects.
048 * @throws ChangeVetoException if the set was null or any of its contents
049 * were not RankedCrossRef objects.
050 */
051 public void setRankedCrossRefs(Set<RankedCrossRef> crossrefs) throws ChangeVetoException;
052 
053 /**
054 * Adds a ranked cross reference to the existing set. If already present, this
055 * call is ignored. Null values are not acceptable.
056 * @param crossref the ranked cross reference to add.
057 * @throws ChangeVetoException if the parameter is null.
058 */
059 public void addRankedCrossRef(RankedCrossRef crossref) throws ChangeVetoException;
060 
061 /**
062 * Removes a ranked cross reference from the existing set. If not present, this
063 * call is ignored. Null values are not acceptable.
064 * @param crossref the ranked cross reference to remove.
065 * @throws ChangeVetoException if the parameter is null.
066 */
067 public void removeRankedCrossRef(RankedCrossRef crossref) throws ChangeVetoException;
068}

AltStyle によって変換されたページ (->オリジナル) /