package factory;

import composite.Item;

public class Driver {
  public static void main(String[] args) {
    Item treasure = null;
    // Using the simple builder factory:
    try {
      treasure = (new factory.builder.BuilderFactory()).getBuilder("treasure").getItem();
    } catch (factory.builder.NoBuilderException e) {
      e.printStackTrace();
    }
    System.out.println(treasure);
    // Using the singleton factory:
    try {
      treasure = factory.singleton.BuilderFactory.getInstance().getBuilder("treasure").getItem();
    } catch (factory.singleton.NoBuilderException e) {
      e.printStackTrace();
    }
    System.out.println(treasure);
  }
}
