aim4.im.v2i.reservation

## Interface ReservationManager<Query,Plan,Ticket>

- Type Parameters:
    `Query` - the Query class
    `Plan` - the Plan class
    `Ticket` - the Ticket class
  All Known Implementing Classes:
    AczManager, ReservationGridManager

      public interface ReservationManager<Query,Plan,Ticket>

  A generic reservation manager.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Ticket` | `accept(Plan plan)` Accept the proposed plan.
    `void` | `cancel(Ticket ticket)` Cancel the reservation.
    `Plan` | `query(Query q)` Make a query.

- - ### Method Detail

    - #### query

          Plan query(Query q)

      Make a query.
      Parameters:
        `q` - the query
      Returns:
        the plan generated to achieve the query; null if no plan is found.

    - #### accept

          Ticket accept(Plan plan)

      Accept the proposed plan.
      Parameters:
        `plan` - the plan genreated by query()
      Returns:
        the ticket of this reservation

    - #### cancel

          void cancel(Ticket ticket)

      Cancel the reservation.
      Parameters:
        `ticket` - the reservation

Copyright © 2013. All rights reserved.