3 import java.util.ArrayList;
\r
5 import taiSync.ReserveInfo;
\r
6 import tainavi.TVProgram.ProgOption;
\r
7 import tainavi.TVProgram.ProgSubgenre;
\r
10 public class AutoReserveInfo implements Cloneable {
\r
12 /*******************************************************************************
\r
14 ******************************************************************************/
\r
17 public AutoReserveInfo() {
\r
20 this.timeslots = new ArrayList<String>(TIMESLOTSIZE);
\r
24 /*******************************************************************************
\r
26 ******************************************************************************/
\r
29 public AutoReserveInfo clone() {
\r
31 AutoReserveInfo p = (AutoReserveInfo) super.clone();
\r
33 p.chNames = new ArrayList<String>();
\r
34 for ( String ch : chNames ) {
\r
38 p.subgenres = new ArrayList<ProgSubgenre>();
\r
39 for ( ProgSubgenre sg : subgenres ) {
\r
40 p.subgenres.add(sg);
\r
45 catch ( Exception e ) {
\r
46 throw new InternalError(e.toString());
\r
51 /*******************************************************************************
\r
53 ******************************************************************************/
\r
55 public static final int TIMESLOTSIZE = 7;
\r
58 /*******************************************************************************
\r
60 ******************************************************************************/
\r
66 private String id; // ID ※レコーダが一意に割り当てるID
\r
72 private String label; // 一覧表示用
\r
74 private String keyword; // 絞り込みキーワード
\r
75 private String exKeyword; // 追加キーワード ※[E]排他キーワード、[T]詳細キーワード
\r
77 private boolean regularExpression; // キーワードは正規表現
\r
78 private boolean fazzySearch; // あいまい検索する
\r
79 private boolean titleOnly; // 検索対象はタイトルのみ[E]
\r
81 private boolean uniqTimeslot; // 全曜日に同じ時間範囲を利用する ※[E]選択可、[T]true強制
\r
82 private ArrayList<String> timeslots; // 時間範囲(7日分) ※使用しない曜日にはnullを設定する
\r
84 private boolean recordedCheck; // 録画済み無効[E]
\r
85 private int recordedCheckTerm; // 録画済み無効遡り範囲[E]
\r
87 private String adate; // 開始日[T]
\r
88 private String zdate; // 終了日[T]
\r
90 private ArrayList<String> chNames = new ArrayList<String>(); // チャンネル名 ※CHコード:[E]予約操作時と同じ、[T]コントローラの値と同じ(ただしこちらはHEX表記)
\r
91 private ArrayList<ProgSubgenre> subgenres = new ArrayList<ProgSubgenre>(); // ジャンル
\r
92 private ArrayList<ProgOption> options = new ArrayList<ProgOption>(); // 番組属性 ※[E]無料/有料のみ
\r
94 private ReserveInfo recSetting; // 録画設定
\r
97 /*******************************************************************************
\r
99 ******************************************************************************/
\r
101 public String getId() { return id; }
\r
102 public void setId(String s) { id = s; }
\r
104 public String getLabel() { return label; }
\r
105 public void setLabel(String s) { label = s; }
\r
107 public String getKeyword() { return keyword; }
\r
108 public void setKeyword(String s) { keyword = s; }
\r
109 public String getExKeyword() { return exKeyword; }
\r
110 public void setExKeyword(String s) { exKeyword = s; }
\r
112 public boolean getRegularExpression() { return regularExpression; }
\r
113 public void setRegularExpression(boolean b) { regularExpression = b; }
\r
114 public boolean getFazzySearch() { return fazzySearch; }
\r
115 public void setFazzySearch(boolean b) { fazzySearch = b; }
\r
116 public boolean getTitleOnly() { return titleOnly; }
\r
117 public void setTitleOnly(boolean b) { titleOnly = b; }
\r
119 public boolean getUniqTimeslot() { return uniqTimeslot; }
\r
120 public void setUniqTimeslot(boolean b) { uniqTimeslot = b; }
\r
122 public int getRecordedCheckTerm() { return recordedCheckTerm; }
\r
123 public void setRecordedCheckTerm(int n) { recordedCheckTerm = n; }
\r
126 * 使用しない曜日の場合はnullを代入する
\r
128 public ArrayList<String> getTimeslots() { return timeslots; }
\r
129 public ArrayList<String> getChannels() { return chNames; }
\r
131 public ReserveInfo getRecSetting() { return recSetting; }
\r
132 public void setRecSetting(ReserveInfo r) { recSetting = r; }
\r
134 /*******************************************************************************
\r
136 ******************************************************************************/
\r
138 public String getChNames() { return (chNames.size() > 0) ? chNames.get(0) : null; }
\r