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 }