]> SALOME platform Git repositories - tools/siman.git/blob - Workspace/Siman-Common/src/org/splat/service/StudyComparisonService.java
Salome HOME
Fix:
[tools/siman.git] / Workspace / Siman-Common / src / org / splat / service / StudyComparisonService.java
1 package org.splat.service; 
2
3 import java.util.List;
4
5 import org.splat.exception.IncompatibleDataException;
6 import org.splat.kernel.MismatchException;
7 import org.splat.service.dto.DocToCompareDTO;
8 import org.splat.service.dto.DocumentDTO;
9 import org.splat.service.dto.StudyFacadeDTO;
10 import org.splat.service.dto.StudyFacadeDTO.ScenarioDTO;
11
12 public interface StudyComparisonService {
13         
14         /**
15          * Compare the studies and generate the file that contains the result chart.
16          * 
17          * @param docsList
18          *            the list of dtos each contains information: StudyTitle, ScenarioTitle, PathToFile in vault.
19          * @param userName
20          *            the name of the user who compare the results.
21          * @throws IncompatibleDataException
22          *             if data is incompatible for "Compare the studies" functionality.
23          * 
24          * @return path to result file in the vault.
25          */
26         String compare(List<DocToCompareDTO> docsList, final String userName)
27                         throws IncompatibleDataException;
28
29         /**
30          * Get studies, scenarios and publications available for comparison. <br>
31          * <b> DocumentDto.id are actually filled in with Publication ids.</b>
32          * 
33          * @param userId
34          *            id of the user to to whom visible studies will be returned.
35          * @return list of {@link StudyFacadeDTO} containing lists of {@link ScenarioDTO} containing list of {@link DocumentDTO}, corresponding
36          *         to to the publications available for comparison, with ids and titles filled in.
37          * @throws MismatchException
38          *             if some configurations considering postprocessing step are invalid.
39          */
40         List<StudyFacadeDTO> getComparableStudies(final long userId)
41                         throws MismatchException;
42 }