package org.mykarte.service.retrieve.sample;

import java.util.Calendar;
import java.util.HashMap;
import java.util.Map;

import org.mykarte.service.retrieve.impl.IAttachment;


/**
 * サンプルクラス
 */
public class SampleClass implements IAttachment {
  private String patientId;

  /**
   * 認証する。
   * 
   * @param args 引数
   * @return true: OK, false: NG
   */
  public boolean authenticate(String[] args) {
    return true;
  }

  /**
   * 患者IDを取得する。
   * 
   * @return 患者ID
   */
  public String getPatient() {
    return patientId;
  }

  /**
   * 患者IDを設定する。
   * 
   * @param patientId 患者ID
   */
  public void setPatient(String patientId) {
    this.patientId = patientId;
  }

  /**
   * type, attribute を設定する。
   * 
   * @param props type, attribute
   */
  public void setProperties(String[] props) {
    // タイプ

    // 属性
  }

  /**
   * 日付を取得する。
   * 
   * @param startDate 開始日
   * @param endDate 終了日
   * @param diff 差分
   * @return 日付
   */
  public Calendar[] getDates(Calendar startDate, Calendar endDate, 
                             boolean diff) {
    // TODO: 日付を返す。
    return new Calendar[] { Calendar.getInstance() };
  }

  /**
   * 指定した日付のデータを文字列として取得する。
   * 
   * @param date 日付
   * @return 文字列
   */
  public String getContent(Calendar date) {
    // TODO: 文字列を返す。
    return "";
  }

  /**
   * 指定した日付のデータをファイルとして取得する。
   * 
   * @param date 日付
   * @return ファイルパス, descriptionId
   */
  public Map<String, String> getFiles(Calendar date) {
    // TODO: ファイルパスを返す。
    return new HashMap<String, String>();
  }
}
