Blogging Roller

Dave Johnson on open web technologies, social software and software development

Planet Roller internals

I promised some details on PlanetTool (the command-line tool that generates Triangle Bloggers) internals, so here goes. This is what happens when PlanetTool runs:

diagram of PlanetTool

Startup

(1) We start by reading the XML configuration file (via JDOM and XPath)

(2) From the config, we create a config object, subscriptions and groups

(3) A group has subscriptions

(4) And a subscription can belong to more than one group

Refresh subscription data

(5) For each subscription, call the Rome Fetcher

(6) Fetcher uses Conditional Get and Etags and caches feeds on disk

(7) Feeds parsed into entries objects and added to subscription objects

File generation

(8) Call Velocity Texen with name of a control template

(9) Texen calls our control template

(10) Control template calls file generation templates

(11) Templates calls planet object to get config, group, subscription, and entry objects needed to generates files needed for aggregated site (HTML, RSS, OPML, etc.)

Dave Johnson in Blogging • 🕒 03:42AM Feb 15, 2005
Tags: Blogging
Comments:

Nice work Dave. I really like this architecture, and its nice utilization of Rome and Texen. I can see Henri's point about considering releasing it as a separate from Roller. Some folks might be interested in just running aggregators, and aggregator hosts may not coincide with blog server hosts even in cases where one wants both. Good stuff.

Posted by Anil Gangolli on February 15, 2005 at 01:50 PM EST #

Yes, I agree. In the near-term I'm shooting for a 1) a command-line tool that is independent of Roller and 2) a Roller integrated version with a UI for administration and database storage for all config and subscription data.

Posted by Dave Johnson on February 15, 2005 at 02:17 PM EST #

Post a Comment:
  • HTML Syntax: NOT allowed