package com.yihu.hos.crawler.origin;



import com.yihu.hos.crawler.model.adapter.AdapterDataSet;
import com.yihu.hos.crawler.model.patient.Patient;
import com.yihu.hos.system.model.SystemDatasource;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * @author Airhead
 * @version 1.0
 * @created 22-5-2015 11:24:26
 */
public interface IDataOrigin {

    String fecthData(Patient patient, SystemDatasource orgAgencyOrigin, AdapterDataSet adapterDataSet);

    List<Patient> getPatientList(SystemDatasource orgAgencyOrigin, AdapterDataSet adapterDataSet, Map<String, Object> condition);

    boolean clearData(Patient patient, SystemDatasource orgAgencyOrigin, AdapterDataSet adapterDataSet);

    Date getServerDateTime(SystemDatasource orgAgencyOrigin);

    enum OriginType {
        /**
         * 数据库
         */
        DB,
        /**
         * RESTful Web Service
         */
        REST,
        /**
         * FileSystem
         */
        FS,

        /**
         * SOAP Web Service
         */
        SOAP
    }
}