1 19 20 package com.sslexplorer.replacementproxy.forms; 21 22 import java.util.ArrayList ; 23 import java.util.List ; 24 import java.util.regex.Pattern ; 25 26 import javax.servlet.http.HttpServletRequest ; 27 28 import org.apache.commons.logging.Log; 29 import org.apache.commons.logging.LogFactory; 30 import org.apache.struts.Globals; 31 import org.apache.struts.action.ActionErrors; 32 import org.apache.struts.action.ActionMapping; 33 import org.apache.struts.action.ActionMessage; 34 35 import com.sslexplorer.core.forms.CoreForm; 36 import com.sslexplorer.replacementproxy.Replacement; 37 38 41 public class ReplacementForm extends CoreForm { 42 43 final static List REPLACE_TYPES = new ArrayList (); 44 Replacement replacement; 45 46 boolean editing = false; 47 48 static Log log = LogFactory.getLog(ReplacementForm.class); 49 50 56 public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) { 57 if ("commit".equals(request.getParameter("action"))) { 58 ActionErrors msgs = new ActionErrors(); 59 if ((getReplacement().getReplaceType() == Replacement.REPLACEMENT_TYPE_RECEIVED_CONTENT || getReplacement() 60 .getReplaceType() == Replacement.REPLACEMENT_TYPE_SENT_CONTENT) 61 && getReplacement().getMimeType().trim().equals("")) { 62 msgs.add(Globals.MESSAGE_KEY, new ActionMessage("createReplacement.error.mimeTypeRequired")); 63 } 64 if (getReplacement().getMatchPattern().trim().equals("")) { 65 msgs.add(Globals.MESSAGE_KEY, new ActionMessage("createReplacement.error.noMatchPattern")); 66 } 67 try { 68 Pattern.compile(getReplacement().getMatchPattern().trim()); 69 } catch (Exception e) { 70 msgs.add(Globals.MESSAGE_KEY, new ActionMessage("createReplacement.error.invalidMatchPattern", e.getMessage())); 71 } 72 if (!replacement.getSitePattern().trim().equals("")) { 73 try { 74 Pattern.compile(getReplacement().getSitePattern().trim()); 75 } catch (Exception e) { 76 msgs.add(Globals.MESSAGE_KEY, new ActionMessage("createReplacement.error.invalidSitePattern", e.getMessage())); 77 } 78 } 79 return msgs; 80 } else { 81 return null; 82 } 83 } 84 85 public Replacement getReplacement() { 86 return replacement; 87 } 88 89 public void setReplacement(Replacement replacement) { 90 this.replacement = replacement; 91 } 92 93 public String getUpdateAction() { 94 return editing ? "/editReplacement.do" : "/createReplacement.do"; 95 } 96 97 public void initialize(Replacement replacement, boolean editing) { 98 this.replacement = replacement; 99 this.editing = editing; 100 } 101 102 public void setEditing(boolean editing) { 103 this.editing = editing; 104 } 105 106 public boolean isEditing() { 107 return editing; 108 } 109 110 public void setReplaceType(String replaceType) { 111 try { 112 replacement.setReplaceType(Integer.parseInt(replaceType)); 113 } catch (NumberFormatException nfe) { 114 log.error(nfe); 115 } 116 } 117 118 public String getReplaceType() { 119 return String.valueOf(replacement.getReplaceType()); 120 } 121 } | Popular Tags |