I’ve finally brought down the TumblrJ service class to it’s easiest use. The cool thing with this design is that for 99% of use cases, you can use the defaults, and for those times when you’re in a bind or need finer grained control over the construction of the objects, you can do that as well. Here it is:

Read all:

TumblrService service = new TumblrService("myblogname");
TumbleLog log = service.read();

Read with a filter:

TumblrReadOptions readOptions = new TumblrReadOptions();
readOptions.setType(TumblrType.REGULAR);

TumblrService service = new TumblrService("myblogname");
TumbleLog log = service.read(readOptions);

Well, you get the idea. Basically, no more configuration of the TumblrHttpReader, TumblrHttpOptions and TumblrJProperties. No nonsense defaults are used and hidden inside the TumblrService class.