#ifndef TRANSACTION_CLASS_
#define TRANSACTION_CLASS_
class Transaction : public Identity
	{
	public:
		//Member data
		enum Request {BORROW, RETURN, REQUEST_SIZE};
		static const Text requestName[REQUEST_SIZE];
		static const int REQUEST_NAME_LENGTH = 6;
		//Constructor/Destructor
		Transaction(Date::Month month,int day, int year, 
						Id patronId, Id itemId,Request request);
		~Transaction();
		//Member functions
		void printDetails(int number)const;
		Id getItemId()const;
		Id getPatronId()const;
		Date getDate()  const;
		Request getRequest()const;
		void setRequest(Request request) ;
	private:
		//Member data
		Request request;
		Date date;
		Id patronId;
		Id itemId;
		static const Text CLASS_NAME ;
};
#endif
