package com.parkerriver;

import java.util.Map;
import java.util.HashMap;
import org.json.JSONObject;

public class BikeJavaBean {
   private Map bikeInfo;

   public BikeJavaBean(Map bikeInfo) {
      this.bikeInfo = bikeInfo;
   }

   public BikeJavaBean() {
      bikeInfo = Collections.synchronizedMap(new HashMap());
      bikeInfo.put("Trek","0001");
      bikeInfo.put("Orbea","0002");
      bikeInfo.put("Guru","0003");
      bikeInfo.put("Giant","0004");
      bikeInfo.put("Look","0005");
      bikeInfo.put("Specialized","0006");
      bikeInfo.put("Cannondale","0007");
   }

   public String[] getbikeMakers(){
      return (String[])bikeInfo.keySet().
         toArray(new String[]{});
   }

   public Map getBikeInfo() {
      return bikeInfo;
   }

   public String toJSON(){
      /* Przedstawione zostay rne sposoby serializacji obiektu Javy
      za pomoc konstruktora  JSONObject. W tym miejscu konstruujemy 
      JSONObject za pomoc obiektu Javy HashMap */
      JSONObject jo = new JSONObject(getBikeInfo());
      return jo.toString(4);
   }
}
