Házi feladat témák
Feladatok cím szerint ADATBÁZIS NÉLKÜL 1. Római szám - decimális szám konverter 2. Caesar-titkosító 3. Kalkulátor ADATBÁZISSAL 4. Irányítószám-konverter (.csv) 5. Periódikus tábla (.xml) 6. Lakásbiztosítás 7. Felhasználó kezelés 8. Kalkulátor memóriával 9. Többnyelvű üzenetkezelés 10. Könyvesbolt 11. Könyvszállító vállalat 12. Könyvnyomda
Általános előírások CXF típusú web service-t kell készíteni ha sok metódust tartalmaz a következő oldalakon látható definíció, akkor elegendő 4 különbözőt kiválasztani és implementálni a választott feladat kisebb átfogalmazása megengedett A web service Tomcat-en fusson A kliens egy egyszerű java program legyen az implementált metódusok működését kell bemutatni REST-alapú web service megoldást is ki lehet dolgozni ekkor a java-kliens helyett egy böngésző használata is elegendő Tcp-monitorral vizsgálni kell a kommunikációt
Beadandó Java forráskódok Tcp-monitor nyomkövetések Rövid (2-3 oldalas) dokumentáció Mi volt a feladat Mik a megvalósítás legfontosabb pontjai A nyomkövetések értékelése Egyéb megjegyzések
1. Római szám konverter int Roman2Decimal(String roman) throws ConverterException; String Decimal2Roman(int decimal) throws ConverterException;
2. Caesar-titkosító String code(string base, char shift); String[] code(string base); String decode(string base, char shift); String[] decode(string base);
3. Kalkulátor double add(double par1, double par2) throws CalcException; double sub(double par1, double par2) throws CalcException; double mul(double par1, double par2) throws CalcException; double div(double par1, double par2) throws CalcException;
4. Irányítószám List<Zip> getzip(string city) throws BadParamException; List<Zip> getzip(location location) throws BadParamException; Zip getsinglezip(string city) throws MultipleZipException, BadParamException; Zip getsinglezip(location location) throws MultipleZipException, BadParamException; List<Location> getlocation(zip zip) throws BadParamException;
ZIP private String value; //0000-9999 Location String city; String street;
5. Periódikus tábla boolean getelement(string name); List<String> getallelementnames(); Element getelementbysymbol(string name); List<Element> getelementbystate(int state); List<Element> getelementbyatomicnumber(int min, int max); List<Element> getelementbymeltingpoint(int min, int max);
Element int state; //légnemű, szilárd, String symbol; String name; int atomincnumber; double atomicweigth; Value bolilingpoint; Value meltingpoint; Value density; Value String unit; double value;
6. Lakásbiztosítás CalculatedFee calculate(params param); a biztosítandó lakás melyik településen van (ún. kockázatviselési hely) a hely irányítószáma mikor épült lakás céllal használják vagy üzleti céllal alapterülete miből készült (tégla, panel, vályog) milyen típusú (lakás, családi ház, nyaraló, garázs, egyéb) hány szobás állandóan lakott-e vagy csak időszakosan hány melléképület tartozik hozzá van-e hozzátartozó tároló
CalculatedFee int[] e_insurance; //havi, negyedéves, féléves, éves int[] insurance; //havi, negyedéves, féléves, éves
7. Felhasználó kezelés User getuser(string username); void adduser(user user) throws UserException; User modifyuser(user user) throws UserException;
User private String username; private String name; private String password; private String zip; private String city; private String street; private Integer birthyear; //!!!
8. Kalkulátor memóriával long open(); void close(long id); double add(double par1, double par2); double add(long id, double par2); //mem += par2 double read(long id); //return = mem void clear(long id); //mem = 0 void write(long id, double par); //mem = par
9. Többnyelvű üzenetkezelés public MessageOut addnewpattern(message base); public boolean deletepattern(string name, String locale); public boolean deletepatterns(string locale); public boolean modifypattern(message base); public String getmessage(string name, String locale, Object[] vars); public Message[] getallsimplemessages(string locale); public Message[] getallmessages(string locale); public String[] getmessagenames(string locale);
Message private int messageid; private String messagename; private String messageloc; private String messagepattern; private String messagetype; //kérdés, hibajelzés, stb. MessageOut private int id; private String name; private String locale; private int error;
10. Könyvesbolt List<Book> getallbooks() throws PublisherNotFoundException; long orderbooks(list<book> bookstoorder, String deliverydestinationid) throws PublisherNotFoundException, DeliveryCompanyNotFoundException, BookOrderException; BookOrder getbookorderbyid(long bookorderid) throws InvalidBookOrderIdException; List<BookOrder> getallbookorders(); void adddeliverycompany(string jndiname); void addpublishercompany(string jndiname); void refreshbookorderstates();
Book String publishercompanyid; long id; String title; int amount; BookOrder private long id; private int state; //pending=1, accepted, undercollection, //underdelivery, delivered, failed private List<Book> orderedbooks; private String deliverydestinationid; private String deliverycompanyid; private long deliveryorderid;
11. Könyvszállító vállalat long adddeliveryorder(list<packinfo> packstodeliver, String deliverydestinationid); int getdeliverorderstate(long deliveryorderid) throws DeliveryOrderNotFoundException; List<DeliveryOrder> getalldeliveryorders(); void startdeliveryorder(long deliveryorderid) throws DeliveryOrderNotFoundException, DeliveryOrderInWrongStateException; void setpackcollected(long deliveryorderid, PackInfo packinfo) throws DeliveryOrderNotFoundException, DeliveryOrderInWrongStateException, PackInfoNotFoundException; void setdeliveryorderdelivered(long deliveryorderid) throws DeliveryOrderNotFoundException, DeliveryOrderInWrongStateException; List<DeliveryOrder> getdeliveryorderswithpackstocollect();
PackInfo private String deliverysourceid; private long packid; DeliveryOrder private long id; private int state; //accepted=1, undercollection, underdelivery, //delivered private String deliverydestinationid; private List<PackInfo> packstocollect; private List<PackInfo> packscollected; private String packstocollectinfo; private String packscollectedinfo;
12. Könyvnyomda List<Book> getallbooks; void addbook(book book); long reservebooks(list<book> bookstoreserve) throws NotEnoughBooksExcexption, BookNotFoundExeption, NotValidOrderEcxeption; RealPack relesaspack(long packid) throws PackNotFoundException; List<RealPack> getpacks();
Book private long id; private String title; private int amount; RealPack private String deliverysourceid; private long packid; private List<Book> packs;