View Javadoc

1   /***
2    * Created on Jun 13, 2005, Copyright UC Regents
3    */
4   package org.telscenter.pas.beans;
5   
6   import java.util.List;
7   import java.util.Map;
8   
9   import javax.swing.JLabel;
10  import javax.swing.JPanel;
11  
12  import net.sf.sail.core.beans.service.AnnotationService;
13  
14  import org.telscenter.pas.service.NavigateAction;
15  import org.telscenter.pas.steps.domain.BlockInteraction;
16  
17  import com.lowagie.text.pdf.PdfPCell;
18  
19  /***
20   * To be implemented by subclasses of PasStep that can return report on work
21   * performed within the step.
22   * 
23   * @author turadg
24   */
25  public interface IWorkReporter {
26  
27  	/***
28  	 * A JPanel presenting a report of the learner's work suitable for the
29  	 * learner themself.
30  	 * 
31  	 * @return
32  	 */
33  	
34  	public JPanel getReportForLearner();
35  	
36  	/***
37  	 * for special navigation options
38  	 * 
39  	 * @param navigateAction - navigates the project to that step
40  	 * @return
41  	 */
42  	public JPanel getReportForLearner(NavigateAction navigateAction);
43  	
44  	/***
45  	 * for special navigation options
46  	 * 
47  	 * @param navigateAction - navigates the project to that step
48  	 * @return
49  	 */
50  	public JPanel getReportForLearnerWithAnnotations(NavigateAction navigateAction);
51  	
52  	public JPanel getReportForLearnerWithAnnotations();
53  
54  	public PdfPCell getReportForLearnerPDF(AnnotationService annotationService);
55  	
56  	public void initStepParts();
57  	
58  	public List<JPanel> getCurrentStepParts();
59  	
60  	public List<String> getCurrentPrompts();
61  	
62  	public List<JLabel> getCurrentAnswers();
63  	
64  	public Integer getPossibleScore();
65  	
66  	public void setPossibleScore(Integer possibleScore);
67  	
68  	
69  	/***
70  	 * Returns a <rimname, prompt> mapping(s) for this step
71  	 * Note that steps like <code>Note</code> can have multiple
72  	 * Rims because if it were a multi-part note step.
73  	 * 
74  	 * @return <code>Map</code> rimname<->prompt mapping for this step.
75  	 */
76  	public Map<String, String> getEntityToPromptMap();
77  
78  }