/**
 * 
 */
package com.ejie.ab61.adaptadores.service;

import com.ejie.ab61.clientesWS.X43ExpedienteElectronico.AExtensionPoint;
import com.ejie.ab61.clientesWS.X43ExpedienteElectronico.TBoolean;
import com.ejie.ab61.clientesWS.X43ExpedienteElectronico.TFolderDocumentList;
import com.ejie.ab61.clientesWS.X43ExpedienteElectronico.TFolderList;
import com.ejie.ab61.clientesWS.X43ExpedienteElectronico.TFolderQuery;
import com.ejie.ab61.clientesWS.X43ExpedienteElectronico.TGetTelActionDocumentList;
import com.ejie.ab61.clientesWS.X43Toolkit.Exception_Exception;

/**
 *  
 * 
 */
public interface X43ExpedienteElectronicoService {

	/**
	 * Metodo que modifica el título de los expediente
	 * 
	 * @param folderID
	 *            id del documento
	 * @param folderTitle
	 *            id del expediente
	 * @return TBoolean
	 * @throws Exception_Exception
	 *             Exception_Exception
	 */
	public TBoolean updateFolderTitle(String folderID, String folderTitle, AExtensionPoint ep)
			throws Exception_Exception;

	/**
	 * Metodo que devuele los canalees de aviso de las personasde un expediente
	 * 
	 * @param query
	 *            TFolderQuery
	 * @param ep
	 *            AExtensionPoint
	 * @return void
	 * @throws Exception_Exception
	 *             Exception_Exception
	 */
	public TFolderList SearchFolders(TFolderQuery query, AExtensionPoint ep) throws Exception_Exception;

	/**
	 * Metodo que recupera los documentos del expediente
	 * 
	 * @param folderID
	 *            id del expediente
	 * @param procedureID
	 *            del expediente
	 * @param auditUser
	 *            audit user
	 * @param ep
	 *            AExtensionPoint
	 * @return TFolderDocumentList
	 * @throws Exception_Exception
	 */
	public TFolderDocumentList getFolderDocuments(String folderID, String procedureID, String auditUser,
			AExtensionPoint ep) throws Exception_Exception;

	/**
	 * Metodo que devuelve los documentos de un expediente
	 * 
	 * @param folderID
	 *            String
	 * @param procedureID
	 *            String
	 * @param auditUser
	 *            String
	 * @param ep
	 *            AExtensionPoint
	 * @return TGetTelActionDocumentList
	 * @throws Exception
	 */
	public TGetTelActionDocumentList GetTelActionDocuments(String folderID, String procedureID, String auditUser,
			AExtensionPoint ep) throws Exception;

}
