CodeReview - grakic/jfreesteel GitHub Wiki

Kratko uputstvo o korišćenju API-a se nalazi u README datoteci.


Isečak iz prepiske e-poštom, da se ne izgubi dok ne bude napisano nešto bolje.

U subotu, 02. 07 2011. у 17:58 +0200, Goran Rakić piše:

  1. EidInfo je klasa koja sadrži podatke očitane iz struktura sa kartice i javne metode za "formatirano" čitanje. Kada se napuni, instanca ove klase može da se koristi u drugim programima, npr. ispiše u terminal, baci na GUI formu ili PDF izveštaj.

  2. EidCard klasa komunicira sa karticom i čita TLV iz pojedinačnih EF. Instanca se dobija preko EidCard.fromCard() uz prosleđenu vezu sa terminalom (kod Jave to je Card objekat iz terminal.connect()). Javni API readEidInfo(), readEidPhoto().

  3. Opciono može da se koristi i Reader klasa koja omotava PC/SC terminal i implementira Observer-Listener za događaje kartica ubačena - izbačena. Listener dobija EidCard objekat pa korisnik samo prosleđuje koji terminal želi da očita.

Primer jednostavnog programa u terminalu koristi samo (1) i (2): sample/JFreesteel.java u jfreesteel/

GUI aplikacija koristi (3), tj. cela aplikacija je jedan listener: EidViewer.java u eidviewer/

Nedostaje mi asinhroni interfejs u EidCard koji zapravo radi.

Ideja je da metoda EidCard.readEidPhotoAsync() primi callback, pokrene novu nit, pročita sliku i cimne callback kada je sve gotovo. Međutim card.beginExclusive() kod mene izgleda ne radi kao pravi mutex lock iako bi po dokumentaciji trebalo.

Takođe u EidCard treba dodati metode za čitanje X509 sertifikata za el. potpis (ako postoji) i sertifikata za autentikaciju i intermediate MUPCA Gradjani koji se takođe nalazi na kartici.


Preneto sa http://codereview.appspot.com/4754047/:

On 2011/07/17 20:24:08, fmil wrote:

Another improvement may be splitting this class into three parts -- since it already tries to do three separate things. But it's not essential and can be done later.

I do not see use case where you would want document info and not personal info.

The fact there are 3 different EF blobs stored on the card internally can be easily changed in the future with new series of cards. All 3 files are read much faster than you can remove and insert new card.

There is a missing feature in EidCard that should be able to validate EidInfo against the signature stored somewhere on a card.

⚠️ **GitHub.com Fallback** ⚠️