package com.ebpm.webdemo.common;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

/**
 * PersonDAO.java
 @author Daniel Seiler
 * Copyright © 2007 EBPM AG. All rights reserved
 *
 */
public class PersonDAO {
  
  private static PersonDAO instance;
  
  public static PersonDAO getInstance() {
    if(instance == null) {
      instance = new PersonDAO();
    }
    return instance;
  }
  
  private Map personBeans = new LinkedHashMap();
  
  private PersonDAO(){}
  
  public PersonBean getPersonById(String id) {
    return (PersonBean)personBeans.get(id);
  }
  
  public Collection getAllPersons() {
    List allPersonBeans = new ArrayList();
    for(Iterator it = personBeans.keySet().iterator(); it.hasNext();) {
      String key = (String)it.next();
      allPersonBeans.add(personBeans.get(key));
    }
    return allPersonBeans;
  }
  
  public void addPerson(PersonBean personBean) {
    String personId = personBean.getLastname()+personBean.getFirstname();
    personBeans.put(personId, personBean);
  }
  
}