package org.buzztroll.mud; import java.lang.*; import java.awt.*; import java.net.*; import java.io.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; import javax.swing.border.*; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; public abstract class MessageTransformer { public static final int STARTS_WITH = 0; public static final int CONTAINS = 1; public static final int ENDS_WITH = 2; public static final int MAX_TYPE = 5; public abstract DisplayMessage transform( DisplayMessage msg); public static boolean stringMatch( int position, String msg, String match) { if(match == null || match.equals("") || msg == null || msg.equals("") || msg.length() < match.length()) { return false; } if(position == CONTAINS && msg.indexOf(match) > -1) { return true; } else if(position == STARTS_WITH && msg.startsWith(match)) { return true; } else if(position == ENDS_WITH && msg.endsWith(match)) { return true; } else { return false; } } public abstract JComponent getRendererComponent(); public abstract Element createDoc( Document doc) throws Exception; public abstract void parse( Element element); }