View Javadoc
1   /******************************************************************************
2    * PicManCommonFacade.java - Business Interface common to the PicMan apps
3    * 
4    * PicMan - The BuckoSoft Picture Manager in Java
5    * Copyright(c) 2008 - Dick Balaska
6    * 
7    */
8   package com.buckosoft.PicMan.business.common;
9   
10  import java.util.LinkedList;
11  import java.util.List;
12  
13  import com.buckosoft.PicMan.business.SetChangedListener;
14  import com.buckosoft.PicMan.domain.SetSize;
15  import com.buckosoft.PicMan.domain.SyncLogEntry;
16  
17  /** Business Interface common to the PicMan apps.
18   * @author Dick Balaska
19   * @since 2008/11/10
20   * @see <a href="http://cvs.buckosoft.com/Projects/java/PicMan/PicManService/src/com/buckosoft/PicMan/business/common/PicManCommonFacade.java">PicManCommonFacade.java</a>
21   */
22  public interface PicManCommonFacade {
23  
24  	///////////////////////////////////////////////////////////////////////////
25  	/* Error Manager */
26  
27  	/** Add an entry to the Error Log.
28  	 * @param t The Throwable to be logged.
29  	 */
30  	void addError(Throwable t);
31  
32  	/** Get a Reference to the Error Log
33  	 * @return The Error Log
34  	 */
35  	List<Throwable>	getErrorLog();
36  
37  	/** Fetch an error from our table
38  	 * @param index The table index
39  	 * @return The Exception
40  	 */
41  	Throwable		getError(int index);
42  
43  	/** Delete any entries in the Error Log
44  	 */
45  	void	emptyErrorLog();
46  
47  	/** Return a reference to the sync log
48  	 * @return the syncLog 
49  	 */
50  	LinkedList<SyncLogEntry> getSyncLog();
51  	
52  	/** Add a sync entry to the log
53  	 * @param sle The SyncLogEntry to add
54  	 */
55  	void addSyncToLog(SyncLogEntry sle);
56  
57  	/** Get the maximum displayed sync log lines in the status page.
58  	 * @return the Count
59  	 */
60  	int	getSyncLogMaxCount();
61  
62  	/** Add this SetChangedListener to the global notification list.
63  	 * @param setChangedListener The Object who wishes to be notified when a set changes
64  	 */
65  	void	addSetChangedListener(SetChangedListener setChangedListener);
66  	
67  	/** Remove this SetChangedListener from the global notification list.
68  	 * @param setChangedListener The Object who no longer wishes to be notified of changes.
69  	 */
70  	void	removeSetChangedListener(SetChangedListener setChangedListener);
71  	
72  	/** A set, or the contents of a set, has changed
73  	 * @param setSize The set and size that has changed
74  	 */
75  	void	fireSetSizeChanged(SetSize setSize);
76  	
77  }