Class PPaymentSetup

All Implemented Interfaces:
PAccountViewPage, PCCPage, PResettable, PAppComponent, PClientComponent, PCollectDataListener, PComponent, PComponentAttribute, PViewDataChangeListener, ContainerListener, ItemListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible

public class PPaymentSetup extends PMaintenancePage implements ItemListener, PResettable
Presents general billing information, as well as information related to the payment type for the account.
Subclasses can add custom fields to this panel along the following lines:
 public class MyBillPanel extends PPaymentSetup {
                public MyBillPanel() {
                        PIACustomizablePanel p = new PIACustomizablePanel();
                        p.setLayout(new GridBagLayout());
                        p.add(new JLabel("One"), new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0
                                ,GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
                                new Insets(10, 5, 0, 0), 0, 0));
                        p.add(new JLabel("Two"), new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0
                                ,GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
                                new Insets(10, 5, 0, 0), 0, 0));
                        p.add(new JTextField(10), new GridBagConstraints(1, 0, 1,1, 0.0, 0.0
                                ,GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
                                new Insets(10, 5, 0, 0), 0, 0));
                        p.add(new JTextField(10), new GridBagConstraints(1, 1, 1,1, 0.0, 0.0
                                ,GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
                                new Insets(10, 5, 0, 0), 0, 0));
                        setCustomData(p);
                }
 }
 
Version:
%version: 20 % %date_modified: Mon May 06 09:54:34 2002 %
Author:
kapono
See Also:
  • Constructor Details

    • PPaymentSetup

      public PPaymentSetup()
      Create a panel displaying the payment type information for an account
  • Method Details

    • addNotify

      public void addNotify()
      Overridden to apply style to some of the fonts
      Overrides:
      addNotify in class JComponent
    • save

      public void save() throws PSaveException
      Commit changes to Portal
      Specified by:
      save in interface PAccountViewPage
      Overrides:
      save in class PMaintenancePage
      Throws:
      PSaveException
    • collectData

      public void collectData(PCollectDataEvent event)
      Retrieves modified data from the panel
      Specified by:
      collectData in interface PCollectDataListener
      Overrides:
      collectData in class PIACustomizablePanel
      Parameters:
      event - the PCollectDataEvent event
    • isClean

      public boolean isClean()
      Determines if changes have been made to this panel, or if it contains previously flagged errors.
      Overrides:
      isClean in class PIACustomizablePanel
      Returns:
      true if no changes/errors exist, false otherwise
    • isDirty

      public boolean isDirty()
      Determines if this panel contains dirty fields
      Specified by:
      isDirty in interface PComponentAttribute
      Overrides:
      isDirty in class PIACustomizablePanel
      Returns:
      true if this panel contains dirty fields
    • resetToDefault

      public void resetToDefault()
      Description copied from class: PIACustomizablePanel
      A convenience method that resets every field on this panel.
      Specified by:
      resetToDefault in interface PComponentAttribute
      Overrides:
      resetToDefault in class PIACustomizablePanel
    • setClean

      public void setClean()
      Resets the dirty/error state of this panel. Any fields marked as changed or in error are reset graphically.
      Specified by:
      setClean in interface PComponentAttribute
      Overrides:
      setClean in class PIACustomizablePanel
    • setModelHandle

      public void setModelHandle(PModelHandle pm) throws RemoteException
      Determines the payment type from the account object represented in the model handle, and explicitely calls setModelHandle() on the panel for that payment type. This avoids exceptions in every panel that does not represent that payment type.
      Specified by:
      setModelHandle in interface PComponent
      Overrides:
      setModelHandle in class PIACustomizablePanel
      Parameters:
      pm - the model handle
      Throws:
      RemoteException - thrown for errors
    • itemStateChanged

      public void itemStateChanged(ItemEvent event)
      Specified by:
      itemStateChanged in interface ItemListener
    • showAsCollapsiblePanel

      public void showAsCollapsiblePanel()
    • getPaymentType

      public int getPaymentType()
      Returns the currently selected payment type
    • isPaymentTypeChanged

      public boolean isPaymentTypeChanged()
    • isBillingDataChanged

      public boolean isBillingDataChanged()
    • setSupportSubordinate

      public void setSupportSubordinate(boolean supported)
    • setCustomData

      protected void setCustomData(PIACustomizablePanel p)
      Affords the subclass the opportunity to add a custom panel to the right of the payment setup panel.
      Parameters:
      p - The custom panel to display
    • preCommit

      protected void preCommit(PModelHandle pm) throws PSaveException
      Affords subclasses the opportunity to inspect the data that is about to be committed to Portal. Data is saved using the CUST_UPDATE_CUSTOMER opcode. If you wish to halt the save process for any reason throw a PSaveException. It is the subclass' responsibility to display an error dialog in this case.
      Throws:
      PSaveException
    • postCommit

      protected void postCommit()
      Called after a successful save to clean up the old payment panels
    • hideBillingDOMField

      protected void hideBillingDOMField()
      Called if you wish to remove the ability to set the billing day of month. If hidden via this method, any permission settings applicable to this field will be ignored.
    • hideBillingFrequencyField

      protected void hideBillingFrequencyField()
      Called if you wish to remove the ability to set the billing frequency. If hidden via this method, any permission settings applicable to this field will be ignored.
    • unregister

      public void unregister() throws RemoteException
      Description copied from class: PIACustomizablePanel
      Used to disconnect the controller from the component for all child widgets contained within this panel.
      Specified by:
      unregister in interface PClientComponent
      Overrides:
      unregister in class PIACustomizablePanel
      Throws:
      RemoteException