001    package org.hackystat.tickertape.tickerlingua;
002    
003    /**
004     * A read-only record for Hackystat services. 
005     * @author Philip Johnson
006     */
007    public class HackystatService {
008      
009      private String id;
010      private String sensorbase;
011      private String dailyprojectdata;
012      private String telemetry;
013      private String projectbrowser;
014    
015      /**
016       * Construct the Hackystat service. 
017       * @param id The service id.
018       * @param sensorbase The sensorbase service URL.
019       * @param dailyprojectdata The DPD service URL.
020       * @param telemetry The telemetry service URL.
021       * @param projectbrowser The projectbrowser service URL. 
022       */
023      public HackystatService(String id, String sensorbase, String dailyprojectdata, String telemetry,
024          String projectbrowser) {
025       this.id = id;
026       this.sensorbase = sensorbase;
027       this.dailyprojectdata = dailyprojectdata;
028       this.telemetry = telemetry;
029       this.projectbrowser = projectbrowser;
030      }
031      
032      /**
033       * Constructs the instance from the passed JAXB service instance. 
034       * @param service The JAXB service instance. 
035       */
036      public HackystatService(org.hackystat.tickertape.tickerlingua.jaxb.HackystatService service) {
037        this(service.getId(), service.getSensorbase(), service.getDailyprojectdata(),  
038            service.getTelemetry(), service.getProjectbrowser());
039      }
040      
041      /** @return The unique id. */
042      public String getId() {
043        return this.id;
044      }
045      
046      /** @return The sensorbase service URL. */
047      public String getSensorbase() {
048        return this.sensorbase;
049      }
050      
051      /** @return The DPD service URL. */
052      public String getDailyProjectData() {
053        return this.dailyprojectdata;
054      }
055      
056      /** @return The telemetry service URL. */
057      public String getTelemetry() {
058        return this.telemetry;
059      }
060      
061      /** @return The projectbrowser URL. */
062      public String getProjectBrowser() {
063        return this.projectbrowser;
064      }
065    
066    }