$ erubis -b -l java example.ejava
import java.util.*;
public class Example {
private String user;
private String[] list;
public example(String user, String[] list) {
this.user = user;
this.list = list;
}
public String view() {
StringBuffer _buf = new StringBuffer();
_buf.append("\n"
+ "
\n"
+ " Hello "); _buf.append(user); _buf.append("!
\n"
+ " \n"
+ " \n");
for (int i = 0; i < list.length; i++) {
_buf.append(" \n"
+ " "); _buf.append(i + 1); _buf.append(" | \n"
+ " "); _buf.append(escape(list[i])); _buf.append(" | \n"
+ "
\n");
}
_buf.append(" \n"
+ "
\n"
+ " \n"
+ "\n");
return _buf.toString();
}
public static void main(String[] args) {
String[] list = { "", "b&b", "\"ccc\"" };
Example ex = Example.new("Erubis", list);
System.out.print(ex.view());
}
public static String escape(String s) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < s.length(); i++) {
char ch = s.charAt(i);
switch (ch) {
case '<': sb.append("<"); break;
case '>': sb.append(">"); break;
case '&': sb.append("&"); break;
case '"': sb.append("""); break;
default: sb.append(ch);
}
}
return sb.toString();
}
}