| |
| package org.bouncycastle.i18n.filter; |
| |
| /** |
| * HTML Filter |
| */ |
| public class HTMLFilter implements Filter |
| { |
| |
| public String doFilter(String input) |
| { |
| StringBuffer buf = new StringBuffer(input); |
| int i = 0; |
| while (i < buf.length()) |
| { |
| char ch = buf.charAt(i); |
| switch (ch) |
| { |
| case '<': |
| buf.replace(i,i+1,"<"); |
| break; |
| case '>': |
| buf.replace(i,i+1,">"); |
| break; |
| case '(': |
| buf.replace(i,i+1,"("); |
| break; |
| case ')': |
| buf.replace(i,i+1,")"); |
| break; |
| case '#': |
| buf.replace(i,i+1,"#"); |
| break; |
| case '&': |
| buf.replace(i,i+1,"&"); |
| break; |
| case '\"': |
| buf.replace(i,i+1,"""); |
| break; |
| case '\'': |
| buf.replace(i,i+1,"'"); |
| break; |
| case '%': |
| buf.replace(i,i+1,"%"); |
| break; |
| case ';': |
| buf.replace(i,i+1,";"); |
| break; |
| case '+': |
| buf.replace(i,i+1,"+"); |
| break; |
| case '-': |
| buf.replace(i,i+1,"-"); |
| break; |
| default: |
| i -= 3; |
| } |
| i += 4; |
| } |
| return buf.toString(); |
| } |
| |
| public String doFilterUrl(String input) |
| { |
| return doFilter(input); |
| } |
| |
| } |