package org.springframework.prospring.ticket.service;

import org.springframework.prospring.ticket.domain.*;

/**
 * Reprezentuje rezerwację.
 */
public class Reservation {

    // miejsca skojarzone z rezerwacją.
    private Seat[] seats;

    // szczegółowe dane rezerwacji.
    private Booking booking;

    /**
     * Pusty konstruktor wymagany przez specyfikację javabeans.
     */
    public Reservation() {
    }

    /**
     * Konstruktor - tworzy nową rezerwację dla określonych miejsc i z podanymi informacjami szczegółowymi.
	 * @param seats Miejsca skojarzone z rezerwacją.
	 * @param booking Szczegółowe informacje związane z rezerwacją.
	 */
	public Reservation(Seat[] seats, Booking booking) {
		this.seats = seats;
		this.booking = booking;
	}

    /**
     * Zwraca szczegółowe informacje związane z rezerwacją.
     * @return Szczegółowe informacje związane z rezerwacją.
     */
    public Booking getBooking() {
		return booking;
	}

    /**
     * Ustawia szczegółowe informacje związane z rezerwacją.
     * @param booking Szczegółowe informacje związane z rezerwacją.
     */
    public void setBooking(Booking booking) {
        this.booking = booking;
    }

    /**
     * Zwraca zarezerwowane miejsca.
     * @return Zarezerwowane miejsca.
     */
    public Seat[] getSeats() {
		return seats;
	}

    /**
     * Ustawia zarezerwowane miejsca.
     * @param seats Zarezerwowane miejsca.
     */
    public void setSeats(Seat[] seats) {
        this.seats = seats;
    }

}
