Child pages
  • Sousa Devel Notes v4
Skip to end of metadata
Go to start of metadata

July 16, 2008

Release completed and announced to sakai-dev.
Updated Sousa To Do list.

Added methods to check for permissions to SequencerService:

public boolean allowCreateSequence (String collId);
public boolean allowEditSequence(String id);
public boolean allowDeleteSequence(String id);
public boolean allowCreateItem (String collId);
public boolean allowEditItem(String id);
public boolean allowDeleteItem(String id);

Added check to PageObjectProducer to allow create page and items. Tested against a student user - works.
Added check to PageObjectProducer to allow edit pages and content items. Tested against a student user - works.
Added check to SequenceProducer to allow create, edit, delete sequences. Tested against a student user - works.

Checked all code in, rev 51122.

Next Steps

  • System errors
  • Externalize content handler registration
  • Row and column spans.
  • Fluid reorderer
  • More media objects: Flash, MathML, VRML, SVG, CSV tables, etc.
  • Gradebook integration
  • Modules
  • Branching sequences

July 17, 2008

Did some research into MathML. Captured some examples from the Mozilla site. For math inclusions to work in FireFox, the MathML DOCTYPE must be included at the top of the page markup, and the file must have a ".xhtml" extension. A conversation with Antranig indicated that adding this is possible in RSF using ContentTypeInfoRegistry.

July 18, 2008

Created icons for spans and added them to Sousa Page and Sequence tools. Checked into SVN as rev. 51195.

Started work on adding spans and triples. Modified Page Tool's editpage.html to include new icons. Added code to EditPageProducer to include just T-TRIPLE-BOTTOM, as a kind of trial.

Coded all spans, tested and works. I should do a bit more testing to make sure that the old layouts still work as well.
Checked code in as rev 51198

Added code to Sequencer. Tested, works.
Checked in as rev 51199

Next Steps

  • Test old layouts.

July 21, 2008

Chatting with Chuck today, he recommended Aaron Z's GenericDAO package. See Generic DAO package. It looks like a simple and powerful ORM solution for simple problems. Also downloaded a PPT on it.

Aug. 5, 2008

Migrated opencsv from another project. This code is open source from SourceForge and is licensed under the Apache 1.0 license.

Discussion with Antranig on compiling Sousa pages into HTML. The upshot is that RSF can't really do it right now and that a RequestFilter is probably the best approach.

Aug. 6, 2008

Got stubbed implementation of CECsv working. Shows a canned thumbnail image in page edit mode. Using a silk icon for CSV item. Just need to unpackage the CSV data and show it. I am adding a table data element to the view template for this and similar kinds of media objects. Anything shown as a table can be done with this element:

<table rsf:id="content-table-00:" border="1" cellpadding="2" cellspacing="0"><tr rsf:id="content-row-00:"><td rsf:id="content-col-00:"><span rsf:id="content-data-00" /></td></tr></table>

Basic table of data is now being displayed. Tested against media element creation, page creation, page editing, sequence editing, and sequence play.

Some control parameters would be useful including: table width, first row as headers, and first column as headers.

Aug. 8, 2008 (8/8/8!)

Had a discussion with Antranig on HTML vs XHTML to support MathML in FireFox. He indicates that this differences is likely to be in the response header some where.

Aug. 11, 2008

Downloaded and installed the current Sakai trunk, currently headed towards a 2.6.0 release with code freeze at the end of Sept. 2008. This code uses the new K1 kernel, which means that several maven changes are needed. The two biggest changes are:

  1. The version of the maven base refers to the next release of Sakai now.
  2. Dependencies on several framework services are now merged into a few kernel dependencies.

Versioning:

  <parent>
    <artifactId>calendar-base</artifactId>
    <groupId>org.sakaiproject</groupId>
    <version>2.6.0RC1-SNAPSHOT</version>
    <relativePath>../../pom.xml</relativePath>
  </parent>

The following services are now bundled into the kernel build:

  • alias/
  • authz/
  • cluster/
  • component/
  • content/
  • db/
  • email/
  • entity/
  • event/
  • exception/
  • i18n/
  • id/
  • javax/
  • jcr/
  • log/
  • memory/
  • site/
  • springframework/
  • thread_local/
  • time/
  • tool/
  • user/
  • util/
  • webapp/

Converted all POMs to use use K1 dependencies.
Superficial test of both Sousa Page and Sequencer both seem to work.

Created a branch for 2.5.x sousa by copying the current trunk before checking in 2.6.0 changes.

Aug. 19, 2008

Was giving some thought to external registration of media types in Sousa. The ContentElementHandler object handles type registration (actually using two methods). It was fairly simple to add a method to add a new handler:

	/*
	 *	Add a new content handler to the list of supported types.  This method is intended to support
	 *	external registration of content handlers.  Types built into Sousa should be intialized in the
	 *	ContentElementHandler constructor above.
	 */
	public void addHandler (String type, String extension, String name, CEBase handler) {
		this.types.add (new MediaType(type, extension, name, handler));
	}

The question is, how does this method get invoked outside of a Sousa tool? I could set up ContentElementHandler such at it is a Sakai component, registered with the ComponentManager, but some piece of code would still have to fetch it and call the addHandler method. I suspect the answer is Spring. If I create a singleton handler based on CEBase and register it with Spring, it should be initialized at start up time. In the init() method, I can call ContentElementHandler.addHandler(), if it's available.

Check this change in as rev. 52188.

Sept. 4,2008

The Sakai Authoring Tool work group asked me to make a canned demo of Sousa. See Sousa Walk Throughs. I downloaded a (free) copy of CamStudio and made four video captures: overview, media objects, create page, and create sequence. The AVI files produced were large, so I converted them to Flash videos. These are more compressed, but the quality seems poor (at least in FireFox).

There was a bug in generating the HTML files for accessing the flash video. The height field was off in the EMBED tag. I corrected these manually. Values for the OBJECT tags were correct.

  • No labels