X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=mythtv%2Fmonitor%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fmythtv%2FRecording.java;h=da7220de36fa58427899eb84501e58ba32fcb844;hb=bf4a315eb93a73f42247b84379e62e86a78c10bb;hp=cab43a6b76affb79b3c5b9fe1a5a3bd854154672;hpb=03947cccfab5ffc636d5ce8262438cbed258ab5a;p=utils diff --git a/mythtv/monitor/src/main/java/org/wamblee/mythtv/Recording.java b/mythtv/monitor/src/main/java/org/wamblee/mythtv/Recording.java index cab43a6b..da7220de 100644 --- a/mythtv/monitor/src/main/java/org/wamblee/mythtv/Recording.java +++ b/mythtv/monitor/src/main/java/org/wamblee/mythtv/Recording.java @@ -19,21 +19,34 @@ package org.wamblee.mythtv; import java.io.Serializable; import java.util.Date; +import javax.persistence.Column; +import javax.persistence.EmbeddedId; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.IdClass; +import javax.persistence.JoinColumn; +import javax.persistence.JoinColumns; +import javax.persistence.ManyToOne; +import javax.persistence.Table; +import javax.persistence.Temporal; +import javax.persistence.TemporalType; +import javax.persistence.Transient; + /** * */ +@Entity +@Table(name="recorded") public class Recording implements Serializable { + + private RecordingPk _id; - private Channel _channel; - private Date _starttime; - - private String _basename; private Date _progstart; - - private String _title; + private String _title; + private String _subtitle; private long _filesize; @@ -45,48 +58,100 @@ public class Recording implements Serializable { /** * @return the channel */ - public Channel getChannel() { - return _channel; + //@Id + //@ManyToOne(targetEntity=Channel.class) + //@JoinColumn(name="chanid") + + /** + * @return the id + */ + @EmbeddedId + public RecordingPk getId() { + return _id; } - + + /** + * @param aId the id to set + */ + public void setId(RecordingPk aId) { + _id = aId; + } + /** * @return the basename */ + @Column(name="basename") public String getBasename() { return _basename; } - + /** - * @return the progstart + * @param aBasename the basename to set */ - public Date getStartTime() { - return _starttime; + public void setBasename(String aBasename) { + _basename = aBasename; } /** * @return the progstart */ + @Column(name="progstart") + @Temporal(TemporalType.TIMESTAMP) public Date getProgstart() { return _progstart; } + /** + * @param aProgstart the progstart to set + */ + public void setProgstart(Date aProgstart) { + _progstart = aProgstart; + } + + @Transient + public Channel getChannel() { + return _id.getChannel(); + } + + @Transient + public Date getStarttime() { + return _id.getStartTime(); + } + /** * @return the title */ + @Column(name="title") public String getTitle() { return _title; } + + /** + * @param aTitle the title to set + */ + public void setTitle(String aTitle) { + _title = aTitle; + } /** * @return the subtitle */ + @Column(name="subtitle") public String getSubtitle() { return _subtitle; } + /** + * @param aSubtitle the subtitle to set + */ + public void setSubtitle(String aSubtitle) { + _subtitle = aSubtitle; + } + /** * @return the filesize */ + @Column(name="filesize") public long getFilesize() { return _filesize; } @@ -100,7 +165,7 @@ public class Recording implements Serializable { */ @Override public String toString() { - return "Recording(" + _channel + "," + _basename + "," + _progstart + "," + _title + "," + _subtitle + ")"; + return "Recording(" + _id + "," + _basename + "," + _progstart + "," + _title + "," + _subtitle + ")"; } /* (non-Javadoc) @@ -112,7 +177,7 @@ public class Recording implements Serializable { return false; } Recording recording = (Recording)aObj; - return _channel.equals(recording._channel) && _starttime.equals(recording._starttime); + return _id.equals(recording._id); } /* (non-Javadoc) @@ -120,7 +185,7 @@ public class Recording implements Serializable { */ @Override public int hashCode() { - return _channel.hashCode()*10 + ((int)_starttime.getTime() %10); + return _id.hashCode(); } }