updated jalview version of dasobert 1.53e client and added Das Sequence Source discov...
[jalview.git] / src / org / biojava / dasobert / dasregistry / DasSource.java
1 /*
2  *                  BioJava development code
3  *
4  * This code may be freely distributed and modified under the
5  * terms of the GNU Lesser General Public Licence.  This should
6  * be distributed with the code.  If you do not have a copy,
7  * see:
8  *
9  *      http://www.gnu.org/copyleft/lesser.html
10  *
11  * Copyright for this code is held jointly by the individual
12  * authors.  These should be listed in @author doc comments.
13  *
14  * For more information on the BioJava project and its aims,
15  * or to join the biojava-l mailing list, visit the home page
16  * at:
17  *
18  *      http://www.biojava.org/
19  *
20  * Created on Feb 8, 2006
21  *
22  */
23 package org.biojava.dasobert.dasregistry;
24
25 import java.util.*;
26
27 public interface DasSource
28 {
29
30   public void setLocal(boolean flag);
31
32   public boolean isLocal();
33
34   /** compare if two das sources are equal
35    *
36    * @param ds
37    * @return returns true if two DAS sources are equivalent
38    */
39   public boolean equals(DasSource ds);
40
41   /** classes that implement equals, should also implement hashKey
42    *
43    * @return the hash code of a das source
44    */
45   public int hashCode();
46
47   public void setId(String i);
48
49   /** get a the Id of the DasSource. The Id is a unique db
50    * identifier. The public DAS-Registry has Auto_Ids that look like
51    * DASSOURCE:12345; public look like XYZ:12345, where the XYZ
52    * prefix can be configured in the config file.
53    * @return String the ID of a Das Source
54    */
55   public String getId();
56
57   public void setNickname(String name);
58
59   public String getNickname();
60
61   public void setUrl(String u);
62
63   public void setAdminemail(String u);
64
65   public void setDescription(String u);
66
67   public void setCoordinateSystem(DasCoordinateSystem[] u);
68
69   public void setCapabilities(String[] u);
70     /** test if a this source has a particular capability
71      * 
72      * @param testCapability
73      * @return <code>true</code> if the server has this capability.
74      */
75     public boolean hasCapability(String testCapability);
76   public String getUrl();
77
78   public String getAdminemail();
79
80   public String getDescription();
81
82   public String[] getCapabilities();
83
84   public DasCoordinateSystem[] getCoordinateSystem();
85
86   public void setRegisterDate(Date d);
87
88   public Date getRegisterDate();
89
90   public void setLeaseDate(Date d);
91
92   public Date getLeaseDate();
93
94   public void setLabels(String[] ls);
95
96   public String[] getLabels();
97
98   public void setHelperurl(String url);
99
100   public String getHelperurl();
101
102   // TestCode is now part of the coordinate system!
103   //public  void setTestCode(String code);
104   //public  String getTestCode();
105
106   public void setAlertAdmin(boolean flag);
107
108   public boolean getAlertAdmin();
109       
110     /** set Properties for this DAS source, e.g. project name
111      * 
112      * @param properties
113      */
114     public void setProperties(Map properties);
115     
116     /** get Properties for this DAS source
117      * 
118      * @return Properties
119      */
120     public Map getProperties();
121   
122
123 }