package gov.nih.nci.cananolab.service.study;

import gov.nih.nci.cananolab.dto.common.StudyBean;
import gov.nih.nci.cananolab.exception.NoAccessException;
import gov.nih.nci.cananolab.exception.StudyException;

import java.util.List;

/**
 * 
 * @author lethai
 *
 */
public interface StudyService {
	
	public StudyBean findStudyById(String id, Boolean loadAccessInfo)
		throws StudyException, NoAccessException;
	
	public List<String> findStudyIdsBy() 
		throws StudyException;
	
	public int getNumberOfPublicStudies() throws StudyException;
	public void deleteStudy(String id) throws StudyException;
	public void saveStudy(StudyBean studyBean) throws StudyException;
	public StudyBean cloneStudy(String orginalName,String newName) throws StudyException;
}

@@ -428,46 +428,600 @@
 ;%0D%0A%09
-%0D%0A%09public List%3CString%3E findStudyIdsBy(
+/**%0D%0A%09 * Find the study ids with the given criteria%0D%0A%09 * @param studyName%0D%0A%09 * @param studyPointOfContact%0D%0A%09 * @param studyType%0D%0A%09 * @param studyDesignType%0D%0A%09 * @param sampleName%0D%0A%09 * @param isAnimalStudy%0D%0A%09 * @param diseases%0D%0A%09 * @param text - study descriptions and outcomes%0D%0A%09 * @param studyOwner - owner of the study%0D%0A%09 * @return%0D%0A%09 * @throws StudyException%0D%0A%09 */%0D%0A%09public List%3CString%3E findStudyIdsBy(String studyName, String studyPointOfContact, String studyType, String studyDesignType,%0D%0A%09%09%09String sampleName, Boolean isAnimalStudy, String diseases, String%5B%5D wordList, String studyOwner
 ) %0D%0A

implement search study feature