0% found this document useful (0 votes)
171 views1 page

Sessionboss: Visual Paradigm For Uml Standard Edition (K.U.Leuven)

The document describes a distributed car rental system with various interfaces and classes. It includes interfaces for managing sessions, companies, reservations and quotes. Key classes include NameServer, CarRentalCompany, CarType, Car and Reservation. Relationships between classes are shown through associations.

Uploaded by

ingdas
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
171 views1 page

Sessionboss: Visual Paradigm For Uml Standard Edition (K.U.Leuven)

The document describes a distributed car rental system with various interfaces and classes. It includes interfaces for managing sessions, companies, reservations and quotes. Key classes include NameServer, CarRentalCompany, CarType, Car and Reservation. Relationships between classes are shown through associations.

Uploaded by

ingdas
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

Visual Paradigm for UML Standard Edition(K.U.

Leuven)

<<Remote>> ISessionRemote +createRentalSession() : IRentalRemote +createManagerSession() : IManagerRemote

SessionBoss -getNameServer() : INameRemote

-sr

NameServer -sr : ISessionRemote -map : HashMap<String, ICompanyRemote> = new HashMap<String, ICompanyRemote>() +NameServer() <<Remote>> INameRemote +addCompany(crc : ICompanyRemote) : void +removeCompany(crc : ICompanyRemote) : void +getCompany(s : String) : ICompanyRemote +getAllCompanies() : Set<ICompanyRemote> +getSessionBoss() : ISessionRemote +setSessionBoss(sr : ISessionRemote) : void

-nr

-ns ManagerSession -ns : INameRemote +ManagerSession(ns : INameRemote) -startDate : Date -endDate : Date -carType : String

<<Serializable>> ReservationConstraints

1 <<Remote>> IManagerRemote +getReservations(comp : String, carType : String) : int

+ReservationConstraints(start : Date, end : Date, carType : String)

-quotes <<Remote>> IRentalRemote RentalSession -nr : INameRemote -quotes : Set<Quote> = new HashSet<Quote>() +RentalSession(nr : INameRemote) +cancelReservation(comp : String, res : Reservation) : void +confirmQuote(comp : String, quote : Quote) : Reservation +createQuote(comp : String, constraints : ReservationConstraints, client : String) : Quote +getAllCarTypes(comp : String) : Collection<CarType> +getCarType(comp : String, carTypeName : String) : CarType +getFreeCarTypes(comp : String, start : Date, end : Date) : Set<CarType> +getName(comp : String) : String +isFree(comp : String, carTypeName : String, start : Date, end : Date) : boolean +getReservationsBy(comp : String, clientName : String) : List<Reservation> +getNumberOfReservationsForCarType(comp : String, carType : String) : int +confirmQuotes() : void * <<Serializable>> Quote -startDate : Date -endDate : Date -carRenter : String -rentalCompany : String -carType : String -rentalPrice : double ~Quote(carRenter : String, start : Date, end : Date, rentalCompany : String, carType : String, rentalPrice : double)

<<Remote>> ICompanyRemote +cancelReservation(res : Reservation) : void +confirmQuote(quote : Quote) : Reservation +createQuote(constraints : ReservationConstraints, client : String) : Quote +getAllCarTypes() : Collection<CarType> +getCarType(carTypeName : String) : CarType +getName() : String +getNumberOfReservationsForCarType(carType : String) : int +getReservationsBy(clientName : String) : ArrayList<Reservation> +isFree(carTypeName : String, start : Date, end : Date) : boolean +getFreeCarTypes(start : Date, end : Date) : Set<CarType>

CarRentalCompany -logger : Logger = Logger.getLogger(CarRentalCompany.class.getName()) -name : String -cars : List<Car> -carTypes : Map<String, CarType> = new HashMap<String, CarType>() +CarRentalCompany(name : String, cars : List<Car>) -setName(name : String) : void -getCar(uid : int) : Car -getFreeCars(carType : String, start : Date, end : Date) : List<Car> -calculateRentalPrice(rentalPricePerDay : double, start : Date, end : Date) : double * Car -id : int -type : CarType -reservations : List<Reservation>

Reservation -carId : int ~Reservation(quote : Quote, carId : int)

* -reservations

-cars

<<Serializable>> CarType -name : String -nbOfSeats : int -smokingAllowed : boolean -rentalPricePerDay : double -trunkSpace : float ~CarType(name : String, nbOfSeats : int, trunkSpace : float, rentalPricePerDay : double, smokingAllowed : boolean) 1

+Car(uid : int, type : CarType) +isFree(start : Date, end : Date) : boolean +addReservation(res : Reservation) : void +removeReservation(reservation : Reservation) : void

-type

You might also like