Slideshare.net (beta)

 
Post: 
Myspace Hi5 Friendster Xanga LiveJournal Facebook Blogger Tagged Typepad Freewebs BlackPlanet gigya icons

All comments

Add a comment on Slide 1

If you have a SlideShare account, login to comment; else you can comment as a guest


Showing 1-50 of 0 (more)

Kommons

From aterreno, 4 months ago

My speech at the first Java mobile developer forum event about the more

121 views  |  0 comments  |  0 favorites  |  2 downloads
 
 
 

Groups/Events

Not added to any group/event

 
 

Privacy InfoNew!

This slideshow is Public

 
Embed in your blog
Embed (wordpress.com)

Slideshow Statistics
Total Views: 121
on Slideshare: 121
from embeds: 0* * Views from embeds since 21 Aug, 07

Slideshow transcript

Slide 1: Kommons: reusable objects for j2me Antonio Terreno Mobile Development Fluidtime DataServices GmbH info@java2me.org http://kommons.java2me.org/

Slide 2: Long-term Goal To have a collection of J2ME classes ● Stable – Easy to use, to integrate – Tested (j2meunit) – Open – Well coded –

Slide 3: Kommons logging Logger “like” log4j ● Appenders – Console ● Bluetooth ● Http ● Debugging levels – Enabled/Disabled ● Debug level ● Info level ● Easy to use – Perfect integration with Log4E ●

Slide 4: Kommons logging private final static Logger logger = Logger.getLogger("LoggerExampleMIDlet"); protected void startApp() { logger.addAppender(AppenderType.CONSOLE); logger.addAppender(AppenderType.PHONE); logger.setDebugEnabled(true); if (logger.isDebugEnabled()) { logger.debug("startApp() - start"); } initDisplay();

Slide 5: Midp Worker Before/After pattern simple implementation ● public abstract class MIDPWorker extends TimerTask public final void run() { before(); try { doWork(); } catch (LogicalException e) { doCatch(e); } finally { after();

Slide 6: ISO helpers IsoDate Helper ● IsoDate parser for ISO 8601 format – http://www.w3.org/TR/xmlschema-2/#date – – IsoDuration Helper ● IsoDuration parser for ISO 8601 format. – http://www.w3.org/TR/xmlschema-2/#duration – IsoDuration format is (-)PnYnMnDTnHnMnS –

Slide 7: ISO helpers IsoDate Helper ● IsoDate parser for ISO 8601 format – http://www.w3.org/TR/xmlschema-2/#date – – IsoDuration Helper ● IsoDuration parser for ISO 8601 format. – http://www.w3.org/TR/xmlschema-2/#duration – IsoDuration format is (-)PnYnMnDTnHnMnS –

Slide 8: I/O Bluetooth ● A simple send & receive client – Needs your help! :-) ● Integration with BtFree??? Federico Paparoni??? ● HTTP ● A complete http client (post/get) – URL encoding – Cookie auth supported – Easy parameters use –

Slide 9: Http example try { String xml = XMLAdapter.getInstance().toXML(msg); logger.debug("Posting", xml); xml = HttpClient.URLencode(xml); HttpClient httpClient = new HttpClient(); String[][] params = { { "sXmlMobileRequest", xml }, { "userName", UserPropertiesWrapper.currentUser() }, }; String response = httpClient.post(Fluidtime.ENDPOINT + "TimeWindow/update.action", params); msg = (Message) XMLAdapter.getInstance().fromXML(response); } catch (LogicalException e) { logger.debug(e);

Slide 10: The cache A persistence cache for MIDP 2.0 ● save(PersistentObject e) – delete(PersistentObject e) – PersistentObject find(String id) – reset() – boolean isEmpty() –

Slide 11: RMS-xml cache Runtime cache: ● An hash table containing objects – Shutting down? ● Storing objects in xml format – Starting up? ● Retrive of the objects from the rms –

Slide 12: Problems How to retrive the objects in cache? ● EntityRecordMapping idea – It contains the reference from an Entity id and – Its Record Store Id How to find an object? ● 1. in the runtime cache ● 2. in the rms ● 3. if found it will be putted on the cache & used ●

Slide 13: RMS-xml cache Model Cache E.R. RMS mapping

Slide 14: Benefits Possibility to store any kind of object ● Possibility to store collection of objects ●

Slide 15: Next Steps of Action Involve developers ● Merge other interesting project into ● Javadoc ● Website ● Licence ● Junit testing ● Receive feedbacks ● ... ●

Slide 16: Credits to Alberto Lagna (CTO Fluidtime GmbH) ● Jean-Marie Dautelle (Javolution.org) ● Fluidtime GmbH ● Java2me.org forum :-) ● Jmdf of course! ●

Slide 17: Q&A Questions? Suggestions? ●