1 25 package org.snipsnap.util; 26 27 import org.radeox.filter.FilterPipe; 28 import org.radeox.filter.ListFilter; 29 import org.radeox.filter.context.FilterContext; 30 import org.radeox.util.logging.Logger; 31 import org.snipsnap.app.Application; 32 import org.snipsnap.render.filter.context.SnipFilterContext; 33 import org.snipsnap.snip.Snip; 34 import org.snipsnap.snip.SnipSpace; 35 import org.snipsnap.snip.SnipSpaceFactory; 36 import org.snipsnap.config.ServerConfiguration; 37 import org.snipsnap.config.Configuration; 38 import org.snipsnap.config.ConfigurationProxy; 39 40 import java.io.IOException ; 41 import java.io.FileInputStream ; 42 import java.util.StringTokenizer ; 43 44 49 public class Presentation { 50 public static void main(String [] args) { 51 String name = args[1]; 52 53 Logger.debug("Loading server config."); 54 ServerConfiguration serverConfig = null; 55 try { 56 serverConfig = new ServerConfiguration("./conf/server.conf"); 57 } catch (IOException e) { 58 Logger.warn("Unable to load server config: " + e); 59 System.exit(-1); 60 } 61 62 Application app = Application.get(); 63 64 Logger.debug("Loading application config."); 65 Configuration config = null; 66 try { 67 config = ConfigurationProxy.newInstance(); 68 config.load(new FileInputStream (serverConfig.getProperty(ServerConfiguration.WEBAPP_ROOT) + args[0] + "/application.conf")); 69 } catch (IOException e) { 70 Logger.warn("Unable to load application config: " + e); 71 System.exit(-1); 72 } 73 app.setConfiguration(config); 74 75 SnipSpace space = SnipSpaceFactory.getInstance(); 76 FilterPipe fp = new FilterPipe(); 77 fp.addFilter(new ListFilter()); 83 93 Snip snip = space.load(name); 94 FilterContext context = new SnipFilterContext(snip); 95 96 StringTokenizer st = new StringTokenizer (fp.filter(snip.getContent(), context), "\n"); 97 boolean first = true; 98 while (st.hasMoreTokens()) { 99 String line = st.nextToken(); 100 if (line.startsWith("1 ")) { 101 String title = line.substring(2); 102 if (!first) { 103 System.out.println("</slide>\n"); 104 } else { 105 first = false; 106 } 107 System.out.println("<slide title=\"" + title + "\">"); 108 } else { 109 System.out.println(line); 110 } 111 } 112 System.out.println("</slide>"); 113 114 System.exit(0); 115 } 116 } 117 | Popular Tags |