Code Search for Developers
 
 
  

InitTestDB.java from iTicket at Krugle


Show InitTestDB.java syntax highlighted

/**
 * Author:
 * @author sschaelle
 * @author ukistler
 * Created:
 * 25.05.2006 18:36:27
 * Description:
 * <text>
 **/

package ch.iticket.db;

import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Random;

import ch.iticket.config.ConfigurationAdapter;
import ch.iticket.config.IConfigurationAdapter;
import ch.iticket.pd.AircraftDescriptionManager;
import ch.iticket.pd.AircraftManager;
import ch.iticket.pd.AirportManager;
import ch.iticket.pd.BoardingManager;
import ch.iticket.pd.BookerManager;
import ch.iticket.pd.BookingItemManager;
import ch.iticket.pd.BookingManager;
import ch.iticket.pd.CarrierManager;
import ch.iticket.pd.CategoryManager;
import ch.iticket.pd.FlightDescriptionManager;
import ch.iticket.pd.FlightDescriptionToCategoryManager;
import ch.iticket.pd.FlightManager;
import ch.iticket.pd.PDManager;
import ch.iticket.pd.PassengerManager;
import ch.iticket.pd.PriceCategoryManager;
import ch.iticket.pd.SeatManager;
import ch.iticket.pd.interfaces.bean.IAircraftDescriptionBean;
import ch.iticket.pd.interfaces.bean.IAirportBean;
import ch.iticket.pd.interfaces.bean.ICarrierBean;
import ch.iticket.pd.interfaces.bean.ICategoryBean;
import ch.iticket.pd.interfaces.bean.IFlightDescriptionBean;
import ch.iticket.pd.interfaces.bean.IPriceCategoryBean;

public class InitTestDB
{

	protected AircraftManager aircraftManager;

	protected AircraftDescriptionManager aircraftDescriptionManager;

	protected AirportManager airportManager;
	
	protected BoardingManager boardingManager;

	protected BookerManager bookerManager;

	protected BookingManager bookingManager;

	protected BookingItemManager bookingItemManager;

	protected CarrierManager carrierManager;

	protected CategoryManager categoryManager;

	protected FlightDescriptionToCategoryManager flightDescriptionToCategoryManager;

	protected FlightDescriptionManager flightDesc;

	protected FlightManager flightManager;

	protected PassengerManager passengerManager;

	protected PriceCategoryManager priceCategoryManager;

	protected SeatManager seatManager;

	public InitTestDB(PDManager pd)
	{
		initializeAll(pd);
		clearAll();
	}

	private void initializeAll(PDManager pd)
	{
		aircraftManager = pd.getAircraftManager();
		aircraftDescriptionManager = pd.getAircraftDescriptionManager();
		airportManager = pd.getAirportManager();
		boardingManager = pd.getBoardingManager();
		bookerManager = pd.getBookerManager();
		bookingManager = pd.getBookingManager();
		bookingItemManager = pd.getBookingItemManager();
		carrierManager = pd.getCarrierManager();
		categoryManager = pd.getCategoryManager();
		flightDescriptionToCategoryManager = pd.getFlightDescriptionToCategoryManager();
		flightDesc = pd.getFlightDescriptionManager();
		flightManager = pd.getFlightManager();
		passengerManager = pd.getPassengerManager();
		priceCategoryManager = pd.getPriceCategoryManager();
		seatManager = pd.getSeatManager();
	}

	protected void clearAll()
	{
		airportManager.clear();
		aircraftDescriptionManager.clear();
		aircraftManager.clear();
		boardingManager.clear();
		bookerManager.clear();
		bookingManager.clear();
		bookingItemManager.clear();
		carrierManager.clear();
		categoryManager.clear();
		flightDescriptionToCategoryManager.clear();
		flightDesc.clear();
		flightManager.clear();
		passengerManager.clear();
		priceCategoryManager.clear();
		seatManager.clear();
	}

	protected void generateFlight(IFlightDescriptionBean bean)
	{
		Date startDate = bean.getForm();
		Date stopDate = bean.getTo();
		while (!startDate.after(stopDate))
		{
			Calendar calendar = Calendar.getInstance();
			calendar.setTime(startDate);
			calendar.add(Calendar.WEEK_OF_YEAR, 1);
			startDate = calendar.getTime();
			flightManager.create(aircraftManager.getRandom(bean.getAircraftDescription(), bean.getCarrier()), startDate, bean);
		}

	}

	protected void generateSeat(IAircraftDescriptionBean aircraftDesc, ICategoryBean economy, ICategoryBean business,
			ICategoryBean first, int economyCount, int businessCount, int firstCount)
	{
		for (int i = 0; i < economyCount; i++)
		{
			seatManager.create(economy, aircraftDesc);
		}

		for (int i = 0; i < businessCount; i++)
		{
			seatManager.create(business, aircraftDesc);
		}

		for (int i = 0; i < firstCount; i++)
		{
			seatManager.create(first, aircraftDesc);
		}
	}

	public void createTestData()
	{
		/**
		 * Hacking style - generiert nur dummy daten
		 */

		IAirportBean zurich = airportManager.create("Zürich", "ZH", (short) 1);
		IAirportBean frankfurt = airportManager.create("Frankfurt", "FA", (short) 1);
		IAirportBean wien = airportManager.create("Wien", "WI",(short) 1);
		IAirportBean paris = airportManager.create("Paris", "PA",(short) 1);
		IAirportBean newYork = airportManager.create("New York", "NY",(short) -6);
		IAirportBean sydney = airportManager.create("Sydney", "SY",(short) 8);

		ICarrierBean swiss = carrierManager.create("Swiss", "LX");

		// Categories
		List<ICategoryBean> categories = new ArrayList<ICategoryBean>();
		ICategoryBean economy = categoryManager.create("Economy");
		ICategoryBean business = categoryManager.create("Business");
		ICategoryBean first = categoryManager.create("First");
		categories.add(economy);
		categories.add(business);
		categories.add(first);

		// PriceCategories
		List<IPriceCategoryBean> priceCategories = new ArrayList<IPriceCategoryBean>();
		priceCategories.add(priceCategoryManager.create("Adults"));
		priceCategories.add(priceCategoryManager.create("Children"));
		priceCategories.add(priceCategoryManager.create("Infants"));

		IAircraftDescriptionBean airbus = aircraftDescriptionManager.create("A-380");
		IAircraftDescriptionBean boeing = aircraftDescriptionManager.create("B-747");

		// Sitzplätze generieren
		generateSeat(airbus, economy, business, first, 200, 30, 20);
		generateSeat(boeing, economy, business, first, 300, 60, 30);

		// je 10 airbus und 10 boeing für swiss
		for (int x = 0; x < 10; x++)
		{
			aircraftManager.create(airbus, "HB-2" + String.valueOf(x), swiss);
			aircraftManager.create(boeing, "HB-3" + String.valueOf(x), swiss);
		}

		// Flight Descriptions
		List<IFlightDescriptionBean> flights = new ArrayList<IFlightDescriptionBean>();

		IFlightDescriptionBean lx123 = createFlightDescription(123, airbus, swiss, zurich, frankfurt, 120, 12, 0, 2006,
				Calendar.MAY, 1, 2006, Calendar.JULY, 31);
		IFlightDescriptionBean lx321 = createFlightDescription(321, airbus, swiss, frankfurt, zurich, 110, 14, 15,
				2006, Calendar.MAY, 1, 2006, Calendar.JULY, 31);
		
		IFlightDescriptionBean lx456 = createFlightDescription(456, airbus, swiss, zurich, paris, 75, 10, 30, 2006,
				Calendar.MAY, 1, 2006, Calendar.JULY, 31);
		IFlightDescriptionBean lx654 = createFlightDescription(654, boeing, swiss, paris, zurich, 60, 12, 30, 2006,
				Calendar.MAY, 1, 2006, Calendar.JULY, 31);
		
		IFlightDescriptionBean lx789 = createFlightDescription(789, boeing, swiss, zurich, sydney, 1140, 8,0, 2006,
				Calendar.MAY, 1, 2006, Calendar.JULY, 31);		
		IFlightDescriptionBean lx987 = createFlightDescription(987, boeing, swiss, sydney, zurich, 1100, 7,0, 2006,
				Calendar.MAY, 1, 2006, Calendar.JULY, 31);		
		
		IFlightDescriptionBean lx234 = createFlightDescription(234, boeing, swiss, zurich, newYork, 900, 15,0, 2006,
				Calendar.MAY, 1, 2006, Calendar.JULY, 31);		
		IFlightDescriptionBean lx432 = createFlightDescription(432, boeing, swiss, newYork, zurich, 980, 7,30, 2006,
				Calendar.MAY, 1, 2006, Calendar.JULY, 31);	
		
		IFlightDescriptionBean lx678 = createFlightDescription(678, boeing, swiss, paris, wien, 125, 7, 0, 2006,
				Calendar.MAY, 1, 2006, Calendar.JULY, 31);		
		IFlightDescriptionBean lx876 = createFlightDescription(876, boeing, swiss, wien, paris, 125, 12, 30, 2006,
				Calendar.MAY, 1, 2006, Calendar.JULY, 31);			
		
		flights.add(lx123);
		flights.add(lx321);
		
		flights.add(lx456);
		flights.add(lx654);
		
		flights.add(lx789);
		flights.add(lx987);
		
		flights.add(lx234);
		flights.add(lx432);
		
		flights.add(lx678);
		flights.add(lx876);
		
		for (IFlightDescriptionBean bean : flights)
		{
			generateFlight(bean);
		}

		// Associate categories/pricecategories with flightdescription
		for (IPriceCategoryBean priceCategory : priceCategories)
		{
			for (ICategoryBean category : categories)
			{

				for (IFlightDescriptionBean desc : flights)
				{
					double price = 0.0;
					Random randomTax = new Random();
					String categoryName = category.getName();
					if (categoryName == "Economy")
					{
						price = 75.0 + randomTax.nextDouble() * 20;
					} else if (categoryName == "Business")
					{
						price = 100.0 + randomTax.nextDouble() * 30;
					} else if (categoryName == "First")
					{
						price = 150.0 + randomTax.nextDouble() * 30;
					}
					
					flightDescriptionToCategoryManager.create(desc, category, priceCategory, price);
				}

			}

		}

		// Booker Testdaten
		bookerManager.create("Nufer", "Marc", "mnufer", "iticket"); // IBookerBean booker = 
		bookerManager.create("Kistler", "Ueli", "ukistler", "iticket"); // IBookerBean booker2 =
		bookerManager.create("Hunziker", "Dennis", "dhunziker", "iticket");
		bookerManager.create("Schälle", "Stefan", "sschaelle", "iticket");

	}

	protected IFlightDescriptionBean createFlightDescription(int flightcode, IAircraftDescriptionBean aircraftDesc,
			ICarrierBean carrier, IAirportBean dep, IAirportBean dest, int duration, int hour, int minute,
			int yearFrom, int monthFrom, int dayFrom, int yearTo, int monthTo, int dayTo)
	{
		Date fromDate;
		Date toDate;
		Date time;
		Calendar calendar = Calendar.getInstance();

		calendar.set(0, 0, 0, hour, minute, 0);
		time = calendar.getTime();

		calendar.set(yearFrom, monthFrom, dayFrom);
		fromDate = calendar.getTime();

		calendar.set(yearTo, monthTo, dayTo);
		toDate = calendar.getTime();

		return flightDesc.create(flightcode, dep, dest, time, duration, fromDate, toDate, aircraftDesc, carrier);
	}

	public static void main(String[] args)
	{
		IConfigurationAdapter config = ConfigurationAdapter.getInstance();
		config.initXML("config/config.xml");
		PDManager.getInstance().Init(config.getTorqueConfig());
		new InitTestDB(PDManager.getInstance());
		System.out.println("Database cleared");
	}
}




See more files for this project here

iTicket

iTicket is an application for booking specific flights. On a quick-check-in terminal the passenger could easily withdraw the ticket.

Project homepage: http://sourceforge.net/projects/iticket
Programming language(s): Java,JSP,XML
License: lgpl21

  InitTestDB.java
  TestClearDB.java