1 package org.apache.turbine.util; 2 3 4 /* 5 * Licensed to the Apache Software Foundation (ASF) under one 6 * or more contributor license agreements. See the NOTICE file 7 * distributed with this work for additional information 8 * regarding copyright ownership. The ASF licenses this file 9 * to you under the Apache License, Version 2.0 (the 10 * "License"); you may not use this file except in compliance 11 * with the License. You may obtain a copy of the License at 12 * 13 * http://www.apache.org/licenses/LICENSE-2.0 14 * 15 * Unless required by applicable law or agreed to in writing, 16 * software distributed under the License is distributed on an 17 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 18 * KIND, either express or implied. See the License for the 19 * specific language governing permissions and limitations 20 * under the License. 21 */ 22 23 24 import java.util.Vector; 25 26 /** 27 * A message class for holding information about a message that 28 * relates to a specific form and field. Used together with 29 * FormMessages class. 30 * 31 * @author <a href="mailto:neeme@one.lv">Neeme Praks</a> 32 * @version $Id: FormMessage.java 1073174 2011-02-21 22:18:45Z tv $ 33 */ 34 public class FormMessage 35 { 36 private String message; 37 private String formName; 38 private final Vector<String> fieldNames; 39 40 /** 41 * Constructor. 42 */ 43 public FormMessage() 44 { 45 fieldNames = new Vector<String>(); 46 } 47 48 /** 49 * Constructor. 50 * 51 * @param formName A String with the form name. 52 */ 53 public FormMessage(String formName) 54 { 55 this(); 56 setFormName(formName); 57 } 58 59 /** 60 * Constructor. 61 * 62 * @param formName A String with the form name. 63 * @param fieldName A String with the field name. 64 */ 65 public FormMessage(String formName, 66 String fieldName) 67 { 68 this(formName); 69 setFieldName(fieldName); 70 } 71 72 /** 73 * Constructor. 74 * 75 * @param formName A String with the form name. 76 * @param fieldName A String with the field name. 77 * @param message A String with the message. 78 */ 79 public FormMessage(String formName, 80 String fieldName, 81 String message) 82 { 83 this(formName, fieldName); 84 setMessage(message); 85 } 86 87 /** 88 * Return the message. 89 * 90 * @return A String with the message. 91 */ 92 public String getMessage() 93 { 94 return message; 95 } 96 97 /** 98 * Return the form name. 99 * 100 * @return A String with the form name. 101 */ 102 public String getFormName() 103 { 104 return formName; 105 } 106 107 /** 108 * Return the field names. 109 * 110 * @return A String[] with the field names. 111 */ 112 public String[] getFieldNames() 113 { 114 String[] result = new String[fieldNames.size()]; 115 fieldNames.copyInto(result); 116 return result; 117 } 118 119 /** 120 * Set the message. 121 * 122 * @param message A String with the message. 123 */ 124 public void setMessage(String message) 125 { 126 this.message = message; 127 } 128 129 /** 130 * Set the form name. 131 * 132 * @param formName A String with the form name. 133 */ 134 public void setFormName(String formName) 135 { 136 this.formName = formName; 137 } 138 139 /** 140 * Adds one field name. 141 * 142 * @param fieldName A String with the field name. 143 */ 144 public void setFieldName(String fieldName) 145 { 146 fieldNames.addElement(fieldName); 147 } 148 149 /** 150 * Write out the contents of the message in a friendly manner. 151 * 152 */ 153 @Override 154 public String toString() 155 { 156 StringBuffer sb = new StringBuffer("formName:" + getFormName() + ", fieldNames:"); 157 for (int i = 0; i< getFieldNames().length; i++){ 158 sb.append(getFieldNames()[i] + " "); 159 } 160 sb.append(", message:" + getMessage()); 161 162 return sb.toString(); 163 } 164 }