package addBk.address;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class AddressHub
    implements ActionListener {
  AddressBookFrame abf =
      new AddressBookFrame();

  CachedDatabase
      cd = CachedDatabase.getCachedDatabase();

  int recordNumber = 0;

  public void displayIndex() {
    IndexFrame indexFrame =
        new IndexFrame(cd);
    indexFrame.setVisible(true);
  }

  public void actionPerformed(ActionEvent e) {
    String c = e.getActionCommand();
    if (c.equals("Index")) {
      displayIndex();
      return;
    }
    if (c.equals("Prev")) {
      recordNumber--;
    } else
      recordNumber++;

    if (recordNumber >= cd.getSize())
      recordNumber = 0;
    if (recordNumber < 0)
      recordNumber = cd.getSize() - 1;
    abf.setAddress(cd.get(recordNumber));
  }

  public void init() {
    abf.init();
    cd.init();
    cd.print();
    cd.sort();
    System.out.println("---");
    cd.print();
    abf.setAddress(cd.get(0));
    abf.setNavigationListener(this);
  }

  public static void main(String args[]) {
    AddressHub h = new AddressHub();
    h.init();
  }
}