package webraveler.plugin; import java.util.*; import webraveler.html.HTMLPage2; import webraveler.http.HTTPRequest; import webraveler.http.HTTPResponse; import webraveler.ravel.PluginAPI; import webraveler.vurl.PluginChangePref; import webraveler.vurl.PluginConfig; /** * A quick demo for EdMedia. */ public class EdMediaDemoPlugin extends webraveler.ravel.RavelerPlugin { /* variables */ /*constructors*/ public EdMediaDemoPlugin () { name = "EdMediaDemoPlugin"; mimeTypes.add("text/html"); } /*methods*/ public void setDefaultAttributes () { this.attributes = new Hashtable(); this.attributes.put("VURL","Unknown"); } // setDefaultAttributes() public boolean initialize () { if (this.attributes == null) this.attributes = new Hashtable(); // String vurl = PluginAPI.addPermanentVirtualURL(ravel,name,"sample",new webraveler.samr.SampleVURL()); String vurl = PluginAPI.addPermanentVirtualURL(ravel,name,"redirect",new webraveler.vurl.RedirectVURL("http://www.math.grinnell.edu/~walker/")); System.out.println("EdMediaDemoPlugin: Created vurl: " + vurl); this.attributes.put("VURL",vurl); return true; }//initialize() public HTTPRequest execute (HTTPRequest request, Hashtable attributes, String userName) { System.out.println("EdMediaDemoPlugin: Processing request"); /* webraveler.samr.SendMail.send( "rebelsky@grinnell.edu", "Page visit by " + userName, request.uriString() + "\n"); */ System.out.println("EdMediaDemoPlugin: Finished processing request"); return request; }//execute() public HTTPResponse execute (HTTPResponse response, Hashtable userAttributes, String userName){ System.out.println("EdMediaDemoPlugin: Processing request"); response.getHtmlPage().insertAtTop( "\n" + "\n" + "\n" + "\n" /* // Cell for user name + "" */ /* // Cell for submit + "\n" + "" + "\n" + "\n" + "\n" + "\n" */ // Link to Curt Bonk's home page + "\n" // Link to TrainingShare.com + "\n" + "\n" + "
EdMedia 2005 Web Raveler Demo
EdMediaUser: " + userName + "
CJBTrainingShare
\n" ); /* Change the entityBytes of the passed HTTPResponse to the HTML page w/inserted text * at the top */ response.correctContentLength(); System.out.println("EdMediaDemoPlugin: Done Processing Request"); return response; } //execute(HTTPResponse) public void terminate() { } // terminate() }// EdMediaDemoPlugin