01 
02 
03 
04 
05 
06 
07 
08 
09 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
 | 
package horstmann.ch05_invoice;
/**
   This interface describes the tasks that an invoice
   formatter needs to carry out.
 */
public interface InvoiceFormatter
{
  /**
      Formats the header of the invoice.
      @return the invoice header
   */
  String formatHeader();
  /**
      Formats a line item of the invoice.
      @return the formatted line item
   */
  String formatLineItem(LineItem item);
  /**
      Formats the footer of the invoice.
      @return the invoice footer
   */
  String formatFooter();
}
 |