package com.gpc.client.common.event; // Java Imports import java.util.EventListener; // Swing Imports import javax.swing.event.EventListenerList; // GPC Imports import com.gpc.client.common.ClientApplicationContext; import com.gpc.common.Profile; // Third-Party imports import org.apache.log4j.Logger; /** *

Title: PointOfSaleEventDispatcher

*

Description:

*

Copyright: Copyright © 2003

*

Company: Genuine Parts Company

* @author TAMSII * @version 1.0 */ public class PointOfSaleEventDispatcher { private static final Logger logger = Logger.getLogger(PointOfSaleEventDispatcher.class); private EventListenerList listeners = new EventListenerList(); private static PointOfSaleEventDispatcher INSTANCE = new PointOfSaleEventDispatcher(); private PointOfSaleEventDispatcher() { } public static PointOfSaleEventDispatcher getInstance() { return INSTANCE; } public void fireInvoiceLoaded (InvoiceEvent ie) { InvoiceListener [] il = (InvoiceListener []) listeners.getListeners(InvoiceEvent.ASSOCIATED_LISTENER); for (int i = 0; i < il.length; i++) { il[i].invoiceLoaded(ie); } } public void fireInvoicePrinted (InvoiceEvent ie) { InvoiceListener [] il = (InvoiceListener []) listeners.getListeners(InvoiceEvent.ASSOCIATED_LISTENER); for (int i = 0; i < il.length; i++) { il[i].invoicePrinted(ie); } invalidateProfile(); } public void fireInvoiceSaved (InvoiceEvent ie) { InvoiceListener [] il = (InvoiceListener []) listeners.getListeners(InvoiceEvent.ASSOCIATED_LISTENER); for (int i = 0; i < il.length; i++) { il[i].invoiceSaved(ie); } invalidateProfile(); } public void fireInvoiceCancelled(InvoiceEvent ie) { InvoiceListener [] il = (InvoiceListener []) listeners.getListeners(InvoiceEvent.ASSOCIATED_LISTENER); for (int i = 0; i < il.length; i++) { il[i].invoiceCancelled(ie); } invalidateProfile(); } public void fireInvoiceSplitted(InvoiceEvent ie) { InvoiceListener [] il = (InvoiceListener []) listeners.getListeners(InvoiceEvent.ASSOCIATED_LISTENER); for (int i = 0; i < il.length; i++) { il[i].invoiceSplitted(ie); } } public void fireInvoiceTotalChanged(InvoiceEvent ie) { InvoiceListener [] itc = (InvoiceListener []) listeners.getListeners(InvoiceEvent.ASSOCIATED_LISTENER); for (int i = 0; i < itc.length; i++) { itc[i].invoiceTotalChanged(ie); } } public void fireManualInvoiceOpened(InvoiceEvent ie) { InvoiceListener [] itc = (InvoiceListener []) listeners.getListeners(InvoiceEvent.ASSOCIATED_LISTENER); for (int i = 0; i < itc.length; i++) { itc[i].manualInvoiceOpened(ie); } } public void fireManualInvoiceClosed(InvoiceEvent ie) { InvoiceListener [] itc = (InvoiceListener []) listeners.getListeners(InvoiceEvent.ASSOCIATED_LISTENER); for (int i = 0; i < itc.length; i++) { itc[i].manualInvoiceClosed(ie); } } public void fireRecallSavedInvoiceDailogueClosed(InvoiceEvent ie) { InvoiceListener[] il = (InvoiceListener[]) listeners .getListeners(InvoiceEvent.ASSOCIATED_LISTENER); for (int i = 0; i < il.length; i++) { il[i].recallSavedInvoiceDialogueClosed(ie); } } public void fireCustomerChanged(CustomerEvent ce) { CustomerListener [] cl = (CustomerListener []) listeners.getListeners(CustomerEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cl.length; i++) { cl[i].customerChanged(ce); } } public void fireCustomerFieldFocusGained(CustomerEvent ce) { CustomerListener [] cl = (CustomerListener []) listeners.getListeners(CustomerEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cl.length; i++) { cl[i].customerFieldFocusGained(ce); } } public void fireCustomerFieldValidated(CustomerEvent ce) { CustomerListener [] cl = (CustomerListener []) listeners.getListeners(CustomerEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cl.length; i++) { cl[i].customerFieldValidated(ce); } } public void fireProcessingCompleted(ProcessingEvent pe) { ProcessingListener [] pl = (ProcessingListener []) listeners.getListeners(ProcessingEvent.ASSOCIATED_LISTENER); for (int i = 0; i < pl.length; i++) { pl[i].processingCompleted(pe); } } public void fireProcessingCanceled(ProcessingEvent pe) { ProcessingListener [] pl = (ProcessingListener []) listeners.getListeners(ProcessingEvent.ASSOCIATED_LISTENER); for (int i = 0; i < pl.length; i++) { pl[i].processingCanceled(pe); } } public void fireEmployeeLoggedIn(EmployeeEvent ee) { EmployeeListener [] el = (EmployeeListener []) listeners.getListeners(EmployeeEvent.ASSOCIATED_LISTENER); for (int i = 0; i < el.length; i++) { el[i].employeeLoggedIn(ee); } } public void fireEmployeeLoggedOut(EmployeeEvent ee) { EmployeeListener [] el = (EmployeeListener []) listeners.getListeners(EmployeeEvent.ASSOCIATED_LISTENER); for (int i = 0; i < el.length; i++) { el[i].employeeLoggedOut(ee); } } public void fireSalespersonChanged(EmployeeEvent ee) { EmployeeListener [] el = (EmployeeListener []) listeners.getListeners(EmployeeEvent.ASSOCIATED_LISTENER); for (int i = 0; i < el.length; i++) { el[i].salespersonChanged(ee); } } public void firePaymentAdded(PaymentEvent pe) { PaymentListener [] pl = (PaymentListener []) listeners.getListeners(PaymentEvent.ASSOCIATED_LISTENER); for (int i = 0; i < pl.length; i++) { pl[i].paymentAdded(pe); } } public void firePaymentCleared(PaymentEvent pe) { PaymentListener [] pl = (PaymentListener []) listeners.getListeners(PaymentEvent.ASSOCIATED_LISTENER); for (int i = 0; i < pl.length; i++) { pl[i].paymentCleared(pe); } } public void bopisPaymentFailure(PaymentEvent pe, String status) { PaymentListener [] pl = (PaymentListener []) listeners.getListeners(PaymentEvent.ASSOCIATED_LISTENER); for (int i = 0; i < pl.length; i++) { pl[i].bopisPaymentFailure(pe, status); } } public void firePaymentPanelDisplayed(PaymentEvent pe) { PaymentListener [] pl = (PaymentListener []) listeners.getListeners(PaymentEvent.ASSOCIATED_LISTENER); for (int i = 0; i < pl.length; i++) { pl[i].paymentPanelDisplayed(pe); } } public void fireChangeDue(PaymentEvent pe) { PaymentListener [] pl = (PaymentListener []) listeners.getListeners(PaymentEvent.ASSOCIATED_LISTENER); for (int i = 0; i < pl.length; i++) { pl[i].changeDue(pe); } } public void fireCatalogingOpened(CatalogEvent ce) { CatalogListener [] cl = (CatalogListener []) listeners.getListeners(CatalogEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cl.length; i++) { cl[i].catalogingOpened(ce); } } public void fireCatalogingClosed(CatalogEvent ce) { CatalogListener [] cl = (CatalogListener []) listeners.getListeners(CatalogEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cl.length; i++) { cl[i].catalogingClosed(ce); } } public void fireCatalogTitleChanged(CatalogTitleEvent cte) { CatalogListener [] cl = (CatalogListener []) listeners.getListeners(CatalogEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cl.length; i++) { cl[i].catalogTitleChanged(cte); } } public void fireCatalogPartsListChanged(CatalogPartsListEvent cple) { CatalogListener [] cl = (CatalogListener []) listeners.getListeners(CatalogEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cl.length; i++) { cl[i].catalogPartsListChanged(cple); } } public void fireInvalidCatalogLookupPerformed(CatalogEvent ce) { CatalogListener [] cl = (CatalogListener []) listeners.getListeners(CatalogEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cl.length; i++) { cl[i].invalidCatalogLookupPerformed(ce); } } public void fireCatalogPartSelected(CatalogEvent ce) { CatalogListener [] cl = (CatalogListener []) listeners.getListeners(CatalogEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cl.length; i++) { cl[i].catalogPartSelected(ce); } } public void firePpseCatalogSessionOpen(CatalogEvent ce) { CatalogListener [] cl = (CatalogListener []) listeners.getListeners(CatalogEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cl.length; i++) { cl[i].ppseCatalogSessionOpen(ce); } } public void firePpseCatalogSessionClosed(CatalogEvent ce) { CatalogListener [] cl = (CatalogListener []) listeners.getListeners(CatalogEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cl.length; i++) { cl[i].ppseCatalogSessionClosed(ce); } } public void fireSequenceStateChanged(CatalogButtonEvent cbe) { CatalogButtonListener [] cbl = (CatalogButtonListener []) listeners.getListeners(CatalogButtonEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cbl.length; i++) { cbl[i].sequenceStateChanged(cbe); } } public void fireCancelStateChanged(CatalogButtonEvent cbe) { CatalogButtonListener [] cbl = (CatalogButtonListener []) listeners.getListeners(CatalogButtonEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cbl.length; i++) { cbl[i].cancelStateChanged(cbe); } } public void fireNewLookupStateChanged(CatalogButtonEvent cbe) { CatalogButtonListener [] cbl = (CatalogButtonListener []) listeners.getListeners(CatalogButtonEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cbl.length; i++) { cbl[i].newLookupStateChanged(cbe); } } public void fireDiscrepancyStateChanged(CatalogButtonEvent cbe) { CatalogButtonListener [] cbl = (CatalogButtonListener []) listeners.getListeners(CatalogButtonEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cbl.length; i++) { cbl[i].discrepancyStateChanged(cbe); } } public void fireBackStateChanged(CatalogButtonEvent cbe) { CatalogButtonListener [] cbl = (CatalogButtonListener []) listeners.getListeners(CatalogButtonEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cbl.length; i++) { cbl[i].backStateChanged(cbe); } } public void fireNextStateChanged(CatalogButtonEvent cbe) { CatalogButtonListener [] cbl = (CatalogButtonListener []) listeners.getListeners(CatalogButtonEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cbl.length; i++) { cbl[i].nextStateChanged(cbe); } } public void fireAddToInvoiceStateChanged(CatalogButtonEvent cbe) { CatalogButtonListener [] cbl = (CatalogButtonListener []) listeners.getListeners(CatalogButtonEvent.ASSOCIATED_LISTENER); for (int i = 0; i < cbl.length; i++) { cbl[i].addToInvoiceStateChanged(cbe); } } public void fireVehicleChanged(VehicleEvent ve) { VehicleListener [] vl = (VehicleListener []) listeners.getListeners(VehicleEvent.ASSOCIATED_LISTENER); for (int i = 0; i < vl.length; i++) { vl[i].vehicleChanged(ve); } } public void fireEngineAdded(SpecificConditionsEvent sce) { SpecificConditionsListener [] scl = (SpecificConditionsListener []) listeners.getListeners(SpecificConditionsEvent.ASSOCIATED_LISTENER); for (int i = 0; i < scl.length; i++) { scl[i].engineAdded(sce); } } public void fireEngineRemoved(SpecificConditionsEvent sce) { SpecificConditionsListener [] scl = (SpecificConditionsListener []) listeners.getListeners(SpecificConditionsEvent.ASSOCIATED_LISTENER); for (int i = 0; i < scl.length; i++) { scl[i].engineRemoved(sce); } } public void fireSpecificConditionAdded(SpecificConditionsEvent sce) { SpecificConditionsListener [] scl = (SpecificConditionsListener []) listeners.getListeners(SpecificConditionsEvent.ASSOCIATED_LISTENER); for (int i = 0; i < scl.length; i++) { scl[i].specificConditionAdded(sce); } } public void fireSpecificConditionRemoved(SpecificConditionsEvent sce) { SpecificConditionsListener [] scl = (SpecificConditionsListener []) listeners.getListeners(SpecificConditionsEvent.ASSOCIATED_LISTENER); for (int i = 0; i < scl.length; i++) { scl[i].specificConditionRemoved(sce); } } public void fireSpecificConditionsCleared(SpecificConditionsEvent sce) { SpecificConditionsListener [] scl = (SpecificConditionsListener []) listeners.getListeners(SpecificConditionsEvent.ASSOCIATED_LISTENER); for (int i = 0; i < scl.length; i++) { scl[i].specificConditionsCleared(sce); } } public void fireListModelChanged(InvoiceEvent ie) { InvoiceListListener [] ill = (InvoiceListListener []) listeners.getListeners(InvoiceListListener.class); for (int i = 0; i < ill.length; i++) { ill[i].listModelChanged(ie); } } public void fireSwitchLineItemHandler(InvoiceEvent ie) { InvoiceListListener [] ill = (InvoiceListListener []) listeners.getListeners(InvoiceListListener.class); for (int i = 0; i < ill.length; i++) { ill[i].switchLineItemHandler(ie); } } public void fireLostSaleQtyChanged(InventoryEvent ie) { InventoryListener [] il = (InventoryListener []) listeners.getListeners(InventoryEvent.ASSOCIATED_LISTENER); for (int i = 0; i < il.length; i++) { il[i].lostSaleQtyChanged(ie); } } public void fireStockDialogClosed(InventoryEvent ie) { InventoryListener [] il = (InventoryListener []) listeners.getListeners(InventoryEvent.ASSOCIATED_LISTENER); for (int i = 0; i < il.length; i++) { il[i].stockDialogClosed(ie); } } public void fireSummaryStoreNumSelected(InventoryEvent ie) { InventoryListener [] il = (InventoryListener []) listeners.getListeners(InventoryEvent.ASSOCIATED_LISTENER); for (int i = 0; i < il.length; i++) { il[i].summaryStoreNumSelected(ie); } } public void fireDetailStoreNumSelected(InventoryEvent ie) { InventoryListener [] il = (InventoryListener []) listeners.getListeners(InventoryEvent.ASSOCIATED_LISTENER); for (int i = 0; i < il.length; i++) { il[i].detailStoreNumSelected(ie); } } public void fireStockCheckSelected(InventoryEvent ie) { InventoryListener [] il = (InventoryListener []) listeners.getListeners(InventoryEvent.ASSOCIATED_LISTENER); for (int i = 0; i < il.length; i++) { il[i].stockCheckSelected(ie); } } public void fireListItemCleared(PointOfSaleListEvent posle) { PointOfSaleListListener [] posll = (PointOfSaleListListener []) listeners.getListeners(PointOfSaleListEvent.ASSOCIATED_LISTENER); for (int i = 0; i < posll.length; i++) { posll[i].listItemCleared(posle); } } public void fireListItemSelected(PointOfSaleListEvent posle) { PointOfSaleListListener [] posll = (PointOfSaleListListener []) listeners.getListeners(PointOfSaleListEvent.ASSOCIATED_LISTENER); for (int i = 0; i < posll.length; i++) { posll[i].listItemSelected(posle); } } public void fireListSetEnabledInvoked(PointOfSaleListEvent posle) { PointOfSaleListListener [] posll = (PointOfSaleListListener []) listeners.getListeners(PointOfSaleListEvent.ASSOCIATED_LISTENER); for (int i = 0; i < posll.length; i++) { posll[i].listSetEnabledInvoked(posle); } } public void fireInvoiceLineItemDeleted(PointOfSaleListEvent posle) { InvoiceLineEntryListener [] ilel = (InvoiceLineEntryListener []) listeners.getListeners(InvoiceLineEntryListener.class); for (int i = 0; i < ilel.length; i++) { ilel[i].invoiceLineItemDeleted(posle); } } public void fireInvoiceLineItemDeleteInvoked(PointOfSaleListEvent posle) { InvoiceLineEntryListener [] ilel = (InvoiceLineEntryListener []) listeners.getListeners(InvoiceLineEntryListener.class); for (int i = 0; i < ilel.length; i++) { ilel[i].invoiceLineItemDeleteInvoked(posle); } } /** * This method calls invoiceLineItemsChanged method for each listener class. * @param posle {@link PointOfSaleListEvent} object */ public void fireInvoiceLineItemsChanged(PointOfSaleListEvent posle) { InvoiceLineEntryListener [] ilel = (InvoiceLineEntryListener []) listeners.getListeners(InvoiceLineEntryListener.class); for (int i = 0; i < ilel.length; i++) { ilel[i].invoiceLineItemsChanged(posle); } } /** * This method calls invoiceAssociatedCoreLineItemDeleteInvoked method for each listener class. * @param Point of sale list event */ public void fireInvoiceAssociatedCoreLineItemDeleteInvoked( PointOfSaleListEvent posle) { InvoiceLineEntryListener[] ilel = (InvoiceLineEntryListener[]) listeners .getListeners(InvoiceLineEntryListener.class); for (int i = 0; i < ilel.length; i++) { ilel[i].invoiceAssociatedCoreLineItemDeleteInvoked(posle); } } public void fireInvoiceLineItemAdded(PointOfSaleListEvent posle) { InvoiceLineEntryListener [] ilel = (InvoiceLineEntryListener []) listeners.getListeners(InvoiceLineEntryListener.class); for (int i = 0; i < ilel.length; i++) { ilel[i].invoiceLineItemAdded(posle); } } public void fireMaxLinesInvoiced(PointOfSaleListEvent posle) { InvoiceListListener [] ill = (InvoiceListListener []) listeners.getListeners(InvoiceListListener.class); for (int i = 0; i < ill.length; i++) { ill[i].maxLinesInvoiced(posle); } } public void firePOSLougoutInvoked (POSTAMSEvent posTAMSEvent) { POSTAMSListener [] eventlisteners = (POSTAMSListener []) listeners.getListeners(POSTAMSListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].posLogoutInvoked(posTAMSEvent); } } public void fireOtherTAMSFunctionsInvoked (POSTAMSEvent posTAMSEvent) { POSTAMSListener [] eventlisteners = (POSTAMSListener []) listeners.getListeners(POSTAMSListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].posOtherTAMSFunctionsInvoked (posTAMSEvent); } } public void firePOSWindowClosing (POSTAMSEvent posTAMSEvent) { POSTAMSListener [] eventlisteners = (POSTAMSListener []) listeners.getListeners(POSTAMSListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].posWindowClosing (posTAMSEvent); } } public void firePOSROAInvoked (POSTAMSEvent posTAMSEvent) { POSTAMSListener [] eventlisteners = (POSTAMSListener []) listeners.getListeners(POSTAMSListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].posROAInvoked (posTAMSEvent); } } public void fireTAMSInvoicingInvoked (POSTAMSEvent posTAMSEvent) { POSTAMSListener [] eventlisteners = (POSTAMSListener []) listeners.getListeners(POSTAMSListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].tamsInvoicingInvoked (posTAMSEvent); } } public void fireProcessLineQueue(PointOfSaleEvent pe) { ProcessLineQueueListener [] plql = (ProcessLineQueueListener []) listeners.getListeners(ProcessLineQueueListener.class); for (int i = 0; i < plql.length; i++) { plql[i].processLineQueue(pe); } } public void fireLocaleChanged(LocaleEvent le) { LocaleListener [] ll = (LocaleListener []) listeners.getListeners(LocaleListener.class); for (int i = 0; i < ll.length; i++) { ll[i].localeChanged(le); } } public void fireLocaleLocked(LocaleEvent le) { LocaleListener [] ll = (LocaleListener []) listeners.getListeners(LocaleListener.class); for (int i = 0; i < ll.length; i++) { ll[i].localeLocked(le); } } public void fireLocaleUnlocked(LocaleEvent le) { LocaleListener [] ll = (LocaleListener []) listeners.getListeners(LocaleListener.class); for (int i = 0; i < ll.length; i++) { ll[i].localeUnlocked(le); } } public void firePOSAddPOInvoked (POSTAMSEvent posTAMSEvent) { POSTAMSListener [] eventlisteners = (POSTAMSListener []) listeners.getListeners(POSTAMSListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].posAddPOInvoked(posTAMSEvent); } } public void fireBuyoutOpened(BuyoutEvent be) { BuyoutListener [] bl = (BuyoutListener []) listeners.getListeners(BuyoutListener.class); for (int i = 0; i < bl.length; i++) { bl[i].buyoutOpened(be); } } public void fireBuyoutClosed(BuyoutEvent be) { BuyoutListener [] bl = (BuyoutListener []) listeners.getListeners(BuyoutListener.class); for (int i = 0; i < bl.length; i++) { bl[i].buyoutClosed(be); } } public void fireBuyoutRefreshed(BuyoutEvent be) { BuyoutListener [] bl = (BuyoutListener []) listeners.getListeners(BuyoutListener.class); for (int i = 0; i < bl.length; i++) { bl[i].buyoutRefreshed(be); } } public void fireBuyoutChosen(BuyoutEvent be) { BuyoutListener [] bl = (BuyoutListener []) listeners.getListeners(BuyoutListener.class); for (int i = 0; i < bl.length; i++) { bl[i].buyoutChosen(be); } } private void invalidateProfile() { ClientApplicationContext clientApplicationContext = ClientApplicationContext. getClientApplicationContext(); clientApplicationContext.getProfile(Profile.POINT_OF_SALE_CLIENT, clientApplicationContext. getLocation()).invalidateAll(); fireProfileChanged(new ProfileEvent(this, null)); } public void fireProfileChanged(ProfileEvent pe) { ProfileListener [] pl = (ProfileListener []) listeners.getListeners(ProfileListener.class); for (int i = 0; i < pl.length; i++) { pl[i].profileChanged(pe); } } public void firePOSAboutInvoked(POSTAMSEvent posTAMSEvent) { POSTAMSListener [] eventlisteners = (POSTAMSListener []) listeners.getListeners(POSTAMSListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].posAboutInvoked(posTAMSEvent); } } public void firePOSScreenLockInvoked(POSTAMSEvent posTAMSEvent) { POSTAMSListener [] eventlisteners = (POSTAMSListener []) listeners.getListeners(POSTAMSListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].posScreenLockInvoked(posTAMSEvent); } } public void fireStartTimer(ScreenLockEvent screenLockEvent) { ScreenLockListener [] eventlisteners = (ScreenLockListener []) listeners.getListeners(ScreenLockEvent.ASSOCIATED_LISTENER); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].startTimer(screenLockEvent); } } public void fireStopTimer(ScreenLockEvent screenLockEvent) { ScreenLockListener [] eventlisteners = (ScreenLockListener []) listeners.getListeners(ScreenLockEvent.ASSOCIATED_LISTENER); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].stopTimer(screenLockEvent); } } public void fireChangedToCashier(POSStateEvent posStateEvent) { POSStateListener [] eventlisteners = (POSStateListener []) listeners.getListeners(POSStateListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].changedToCashier(posStateEvent); } } public void fireChangedToNormal(POSStateEvent posStateEvent) { POSStateListener [] eventlisteners = (POSStateListener []) listeners.getListeners(POSStateListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].changedToNormal(posStateEvent); } } public void fireChangedToInvoicingAsCashier(POSStateEvent posStateEvent) { POSStateListener [] eventlisteners = (POSStateListener []) listeners.getListeners(POSStateListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].changedToInvoicingAsCashier(posStateEvent); } } public void fireChangedToPhoneRoom(POSStateEvent posStateEvent) { POSStateListener [] eventlisteners = (POSStateListener []) listeners.getListeners(POSStateListener.class); for (int i = 0; i < eventlisteners.length; i++) { eventlisteners[i].changedToPhoneRoom(posStateEvent); } } public void fireEmployeeClockStateChanged(EmployeeClockEvent ece) { EmployeeClockListener [] ecl = (EmployeeClockListener []) listeners.getListeners(EmployeeClockListener.class); for (int i = 0; i < ecl.length; i++) { ecl[i].employeeClockedInOut(ece); } } public void fireCommunicationDirectoryChanged(CommunicationDirectoryEvent cde) { CommunicationDirectoryListener [] cdl = (CommunicationDirectoryListener []) listeners.getListeners(CommunicationDirectoryListener.class); for (int i = 0; i < cdl.length; i++) { cdl[i].showListTab(cde); } } public void fireReportCriteriaAnswerChangedEvent(ReportCriteriaAnswerChangedEvent evt) { ReportCriteriaAnswerChangedEventListener [] el = (ReportCriteriaAnswerChangedEventListener []) listeners.getListeners(ReportCriteriaAnswerChangedEventListener.class); for (int i = 0; i * listeners.remove(callingClass, posl); * listeners.add(callingClass, posl); * * * @param callingClass * @param posl */ public void addListener(Class callingClass, PointOfSaleListener posl) { int index = -1; EventListener [] el = listeners.getListeners(callingClass); for (int i = 0; i < el.length; i++) { if (el[i].getClass().equals(posl.getClass())) { index = i; } } if (index == -1) { listeners.add(callingClass, posl); } } public void removeListener(Class callingClass, PointOfSaleListener posl) { listeners.remove(callingClass, posl); } /** * This method calls detachCoreLineItemFromPart method * for each listener class. * @param posle */ public void fireDetachCoreLineItemFromPart(PointOfSaleListEvent posle) { InvoiceLineEntryListener[] ilel = (InvoiceLineEntryListener[]) listeners .getListeners(InvoiceLineEntryListener.class); for (int i = 0; i < ilel.length; i++) { ilel[i].detachCoreLineItemFromPart(posle); } } /** * This method calls addPartFromPpse method * for each listener class. * @param posle */ public void fireAddPartFromPpse(PointOfSaleListEvent posle) { InvoiceLineEntryListener[] ilel = (InvoiceLineEntryListener[]) listeners .getListeners(InvoiceLineEntryListener.class); for (int i = 0; i < ilel.length; i++) { ilel[i].addPartFromPpse(posle); } } public void fireInvoiceLineItemSpeciallyOrdered(PointOfSaleListEvent posle) { InvoiceLineEntryListener[] invoiceLineEntryListeners = (InvoiceLineEntryListener[]) listeners.getListeners(InvoiceLineEntryListener.class); for (int index = 0; index < invoiceLineEntryListeners.length; index++) { invoiceLineEntryListeners[index].invoiceLineItemSpeciallyOrdered(posle); } } public void fireLineItemAddedOutsideTAMS(CartEvent ce) { CartListener[] cartListeners = (CartListener[]) listeners.getListeners(CartListener.class); for (int index = 0; index < cartListeners.length; index++) { cartListeners[index].lineItemAddedOutsideTAMS(ce); } } public void fireLineItemEditedOutsideTAMS(CartEvent ce) { CartListener[] cartListeners = (CartListener[]) listeners.getListeners(CartListener.class); for (int index = 0; index < cartListeners.length; index++) { cartListeners[index].lineItemEditedOutsideTAMS(ce); } } public void fireLineItemRemovedOutsideTAMS(CartEvent ce) { CartListener[] cartListeners = (CartListener[]) listeners.getListeners(CartListener.class); for (int index = 0; index < cartListeners.length; index++) { cartListeners[index].lineItemRemovedOutsideTAMS(ce); } } public void fireLineItemAddedInTAMS(CartEvent ce) { CartListener[] cartListeners = (CartListener[]) listeners.getListeners(CartListener.class); for (int index = 0; index < cartListeners.length; index++) { cartListeners[index].lineItemAddedInTAMS(ce); } } public void fireLineItemEditedInTAMS(CartEvent ce) { CartListener[] cartListeners = (CartListener[]) listeners.getListeners(CartListener.class); for (int index = 0; index < cartListeners.length; index++) { cartListeners[index].lineItemEditedInTAMS(ce); } } public void fireLineItemRemovedInTAMS(CartEvent ce) { CartListener[] cartListeners = (CartListener[]) listeners.getListeners(CartListener.class); for (int index = 0; index < cartListeners.length; index++) { cartListeners[index].lineItemRemovedInTAMS(ce); } } public void fireTamsIsReady(CartEvent ce) { CartListener[] cartListeners = (CartListener[]) listeners.getListeners(CartListener.class); for (int index = 0; index < cartListeners.length; index++) { cartListeners[index].tamsIsReady(ce); } } public void fireTamsIsBusy(CartEvent ce) { CartListener[] cartListeners = (CartListener[]) listeners.getListeners(CartListener.class); for (int index = 0; index < cartListeners.length; index++) { cartListeners[index].tamsIsBusy(ce); } } }