import java.io.Serializable; import java.io.ObjectOutputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.Calendar; import java.util.Date; import java.util.ArrayList; public class DataCreator{ private static final String DEFAULT_FILE = "data.ser"; private static Calendar dateCreator = Calendar.getInstance(); public static void main(String [] args){ String fileName; if (args.length == 1){ fileName = args[0]; } else{ fileName = DEFAULT_FILE; } serialize(fileName); } public static void serialize(String fileName){ try{ serializeToFile(createData(), fileName); } catch (IOException exc){ exc.printStackTrace(); } } private static Serializable createData(){ ArrayList appointments = new ArrayList(); ArrayList contacts = new ArrayList(); contacts.add(new ContactImpl("Test", "Subject", "Volunteer", "United Patterns Consortium")); Location location1 = new LocationImpl("Punxsutawney, PA"); appointments.add(new Appointment("Slowpokes anonymous", contacts, location1, createDate(2001, 1, 1, 12, 01), createDate(2001, 1, 1, 12, 02))); appointments.add(new Appointment("Java focus group", contacts, location1, createDate(2001, 1, 1, 12, 30), createDate(2001, 1, 1, 14, 30))); appointments.add(new Appointment("Something else", contacts, location1, createDate(2001, 1, 1, 12, 01), createDate(2001, 1, 1, 12, 02))); appointments.add(new Appointment("Yet another thingie", contacts, location1, createDate(2001, 1, 1, 12, 01), createDate(2001, 1, 1, 12, 02))); return appointments; } private static void serializeToFile(Serializable content, String fileName) throws IOException{ ObjectOutputStream serOut = new ObjectOutputStream(new FileOutputStream(fileName)); serOut.writeObject(content); serOut.close(); } public static Date createDate(int year, int month, int day, int hour, int minute){ dateCreator.set(year, month, day, hour, minute); return dateCreator.getTime(); } }