extensions/net.sf.basedb.labenv/trunk/src/net/sf/basedb/labenv/entity/SensorData.java

Code
Comments
Other
Rev Date Author Line
3017 08 Dec 14 nicklas 1 package net.sf.basedb.labenv.entity;
3017 08 Dec 14 nicklas 2
3017 08 Dec 14 nicklas 3 import java.util.Date;
3017 08 Dec 14 nicklas 4
3017 08 Dec 14 nicklas 5 import javax.persistence.Basic;
3017 08 Dec 14 nicklas 6 import javax.persistence.Column;
3017 08 Dec 14 nicklas 7 import javax.persistence.Entity;
3017 08 Dec 14 nicklas 8 import javax.persistence.GeneratedValue;
3017 08 Dec 14 nicklas 9 import javax.persistence.GenerationType;
3017 08 Dec 14 nicklas 10 import javax.persistence.Id;
3017 08 Dec 14 nicklas 11 import javax.persistence.Index;
3017 08 Dec 14 nicklas 12 import javax.persistence.Table;
3017 08 Dec 14 nicklas 13 import javax.persistence.Temporal;
3017 08 Dec 14 nicklas 14 import javax.persistence.TemporalType;
3017 08 Dec 14 nicklas 15
3017 08 Dec 14 nicklas 16 /**
3017 08 Dec 14 nicklas 17   Entity class for mapping database table that store sensor 
3017 08 Dec 14 nicklas 18   measurements. One row is a single timestamped temperature/humidity 
3017 08 Dec 14 nicklas 19   measurement from one sensor. 
3017 08 Dec 14 nicklas 20   
3017 08 Dec 14 nicklas 21   ID:s are automatically generated by the database. We create indexes
3017 08 Dec 14 nicklas 22   on the timestamp and sensor columns since those will probably be used
3017 08 Dec 14 nicklas 23   for filtering and sorting in SQL queries.
3017 08 Dec 14 nicklas 24   
3017 08 Dec 14 nicklas 25   @author nicklas
3017 08 Dec 14 nicklas 26   @since 1.3
3017 08 Dec 14 nicklas 27 */
3017 08 Dec 14 nicklas 28 @Entity
3017 08 Dec 14 nicklas 29 @Table(
3017 08 Dec 14 nicklas 30   name="`SensorData`", 
3017 08 Dec 14 nicklas 31   indexes=
3017 08 Dec 14 nicklas 32   {
3017 08 Dec 14 nicklas 33     @Index(name="sensor_idx", columnList="`sensor_num`"),
3017 08 Dec 14 nicklas 34     @Index(name="time_idx", columnList="`time`")
3017 08 Dec 14 nicklas 35   })
3017 08 Dec 14 nicklas 36 public class SensorData 
3017 08 Dec 14 nicklas 37 {
3017 08 Dec 14 nicklas 38   // Auto-generated
3017 08 Dec 14 nicklas 39   private Long id;
3017 08 Dec 14 nicklas 40   
3017 08 Dec 14 nicklas 41   // Sensor and timestamp
3018 09 Dec 14 nicklas 42   private int sensorNumber;
3017 08 Dec 14 nicklas 43   private Date time;
3017 08 Dec 14 nicklas 44   
3017 08 Dec 14 nicklas 45   // Measured values
3017 08 Dec 14 nicklas 46   private float temperature;
3017 08 Dec 14 nicklas 47   private float humidity;
3017 08 Dec 14 nicklas 48   
3017 08 Dec 14 nicklas 49   public SensorData()
3017 08 Dec 14 nicklas 50   {}
3017 08 Dec 14 nicklas 51   
3017 08 Dec 14 nicklas 52   @Id
3017 08 Dec 14 nicklas 53   @GeneratedValue(strategy=GenerationType.AUTO)
3017 08 Dec 14 nicklas 54   public Long getId() 
3017 08 Dec 14 nicklas 55   {
3017 08 Dec 14 nicklas 56     return id;
3017 08 Dec 14 nicklas 57   }
3017 08 Dec 14 nicklas 58   public void setId(Long id) 
3017 08 Dec 14 nicklas 59   {
3017 08 Dec 14 nicklas 60     this.id = id;
3017 08 Dec 14 nicklas 61   }
3017 08 Dec 14 nicklas 62
3017 08 Dec 14 nicklas 63   @Basic(optional=false)
3017 08 Dec 14 nicklas 64   @Column(name="`sensor_num`")
3018 09 Dec 14 nicklas 65   public int getSensorNumber() 
3017 08 Dec 14 nicklas 66   {
3017 08 Dec 14 nicklas 67     return sensorNumber;
3017 08 Dec 14 nicklas 68   }
3018 09 Dec 14 nicklas 69   public void setSensorNumber(int sensorNumber) 
3017 08 Dec 14 nicklas 70   {
3017 08 Dec 14 nicklas 71     this.sensorNumber = sensorNumber;
3017 08 Dec 14 nicklas 72   }
3017 08 Dec 14 nicklas 73
3017 08 Dec 14 nicklas 74   @Basic(optional=false)
3017 08 Dec 14 nicklas 75   @Temporal(TemporalType.TIMESTAMP)
3017 08 Dec 14 nicklas 76   @Column(name="`time`")
3017 08 Dec 14 nicklas 77   public Date getTime() 
3017 08 Dec 14 nicklas 78   {
3017 08 Dec 14 nicklas 79     return time;
3017 08 Dec 14 nicklas 80   }
3017 08 Dec 14 nicklas 81   public void setTime(Date time) 
3017 08 Dec 14 nicklas 82   {
3017 08 Dec 14 nicklas 83     this.time = time;
3017 08 Dec 14 nicklas 84   }
3017 08 Dec 14 nicklas 85
3017 08 Dec 14 nicklas 86   @Basic(optional=false)
3017 08 Dec 14 nicklas 87   @Column(name="`temperature`")
3017 08 Dec 14 nicklas 88   public float getTemperature() 
3017 08 Dec 14 nicklas 89   {
3017 08 Dec 14 nicklas 90     return temperature;
3017 08 Dec 14 nicklas 91   }
3017 08 Dec 14 nicklas 92   public void setTemperature(float temperature) 
3017 08 Dec 14 nicklas 93   {
3017 08 Dec 14 nicklas 94     this.temperature = temperature;
3017 08 Dec 14 nicklas 95   }
3017 08 Dec 14 nicklas 96
3017 08 Dec 14 nicklas 97   @Basic(optional=false)
3017 08 Dec 14 nicklas 98   @Column(name="`humidity`")
3017 08 Dec 14 nicklas 99   public float getHumidity() 
3017 08 Dec 14 nicklas 100   {
3017 08 Dec 14 nicklas 101     return humidity;
3017 08 Dec 14 nicklas 102   }
3017 08 Dec 14 nicklas 103   public void setHumidity(float humidity) 
3017 08 Dec 14 nicklas 104   {
3017 08 Dec 14 nicklas 105     this.humidity = humidity;
3017 08 Dec 14 nicklas 106   }
3017 08 Dec 14 nicklas 107   
3017 08 Dec 14 nicklas 108 }