001    /**
002     * Copyright (C) 2010 The Roslin Institute <contact andy.law@roslin.ed.ac.uk>
003     *
004     * This file is part of the Ensembl Java API demonstration project developed by the
005     * Bioinformatics Group at The Roslin Institute, The Royal (Dick) School of
006     * Veterinary Studies, University of Edinburgh.
007     *
008     * This is free software: you can redistribute it and/or modify
009     * it under the terms of the GNU General Public License (version 3) as published by
010     * the Free Software Foundation.
011     *
012     * This software is distributed in the hope that it will be useful,
013     * but WITHOUT ANY WARRANTY; without even the implied warranty of
014     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
015     * GNU General Public License for more details.
016     *
017     * You should have received a copy of the GNU General Public License
018     * in this software distribution. If not, see <http://www.gnu.org/licenses/gpl-3.0.html/>.
019     */
020    package uk.ac.roslin.ensembl.datasourceaware.compara;
021    
022    import java.util.ArrayList;
023    import java.util.List;
024    import java.util.TreeSet;
025    import uk.ac.roslin.ensembl.dao.factory.DAOComparaFactory;
026    import uk.ac.roslin.ensembl.datasourceaware.DAObject;
027    import uk.ac.roslin.ensembl.datasourceaware.core.DAGene;
028    import uk.ac.roslin.ensembl.model.compara.HomologyRelationship;
029    import uk.ac.roslin.ensembl.model.compara.HomologyType;
030    import uk.ac.roslin.ensembl.model.core.Species;
031    import uk.ac.roslin.ensembl.model.relationship.RelationshipType;
032    
033    
034    public  class DAHomologyRelationship extends DAObject implements HomologyRelationship<DAGene> {
035    
036        public DAHomologyRelationship() {
037            super();
038        }
039    
040    //    public DAHomologyRelationship(DAOComparaFactory factory) {
041    //        //super(factory);
042    //    }
043    
044        private HomologyType type = null;
045        private String lastCommonAncestor = "";
046        private TreeSet<DAGene> members = new TreeSet<DAGene>(DAObject.daComparator);
047    
048        public TreeSet<DAGene> getMembers() {
049            return members;
050        }
051    
052        public HomologyType getType() {
053            return this.type;
054        }
055    
056        public void setType(HomologyType type) {
057            this.type = type;
058        }
059    
060        public String getLastCommonAncestor() {
061            return this.lastCommonAncestor;
062        }
063    
064        public List<Species> getSpecies() {
065            throw new UnsupportedOperationException("Not supported yet.");
066        }
067    
068        public void setLastCommonAncestor(String lastCommonAncestor) {
069            this.lastCommonAncestor = lastCommonAncestor;
070        }
071    
072        public HomologyType getRelationshipType() {
073            return this.type;
074        }
075    
076        public void setRelationshipType(RelationshipType type) {
077            this.type = (HomologyType) type;
078        }
079    }