Monday, November 08, 2010 at 12:05 AM.

on requestNotification (protocol, procedure, whoToNotify, userinfo) {
		<<8/27/02; 2:49:43 AM by JES
			<<Created. Store data about notification requests so that when we save our outline, people will getim-based notifications.
	local (adrdata = radio.outliner.init ());
	local (adrsubscribers = @adrdata^.subscribers);
	if not defined (adrsubscribers^) {
		new (tableType, adrsubscribers)};
	local (adrsuber = @adrsubscribers^.[protocol + ":" + whoToNotify] );
	if not defined (adrsuber^) {
		new (tableType, adrsuber)};
	if not defined (adrsuber^.protocol) {
		adrsuber^.protocol = protocol};
	if not defined (adrsuber^.procedure) {
		adrsuber^.procedure = procedure};
	if not defined (adrsuber^.screenname) {
		adrsuber^.screenname = whoToNotify};
	adrsuber^.whenSubscribed = ();
	adrsuber^.userinfo = userinfo;
	return (adrsuber)}
<<bundle //test code
	<<requestNotification ("aim", "radioOutliner.requestNotification", "eatthefuture")

This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.