1 /* 2 * $Id$ 3 */ 4 5 package org.apache.maven.model; 6 7 //---------------------------------/ 8 //- Imported classes and packages -/ 9 //---------------------------------/ 10 11 import java.util.Date; 12 13 /** 14 * Configures one method for notifying users/developers when a 15 * build breaks. 16 * 17 * @version $Revision$ $Date$ 18 */ 19 public class Notifier implements java.io.Serializable { 20 21 22 //--------------------------/ 23 //- Class/Member Variables -/ 24 //--------------------------/ 25 26 /** 27 * The mechanism used to deliver notifications. 28 */ 29 private String type = "mail"; 30 31 /** 32 * Whether to send notifications on error. 33 */ 34 private boolean sendOnError = true; 35 36 /** 37 * Whether to send notifications on failure. 38 */ 39 private boolean sendOnFailure = true; 40 41 /** 42 * Whether to send notifications on success. 43 */ 44 private boolean sendOnSuccess = true; 45 46 /** 47 * Whether to send notifications on warning. 48 */ 49 private boolean sendOnWarning = true; 50 51 /** 52 * 53 * 54 * <b>Deprecated</b>. Where to send the 55 * notification to - eg email address. 56 * 57 * 58 */ 59 private String address; 60 61 /** 62 * Field configuration. 63 */ 64 private java.util.Properties configuration; 65 66 67 //-----------/ 68 //- Methods -/ 69 //-----------/ 70 71 /** 72 * Method addConfiguration. 73 * 74 * @param key 75 * @param value 76 */ 77 public void addConfiguration( String key, String value ) 78 { 79 getConfiguration().put( key, value ); 80 } //-- void addConfiguration( String, String ) 81 82 /** 83 * Get 84 * 85 * <b>Deprecated</b>. Where to send the 86 * notification to - eg email address. 87 * 88 * 89 * 90 * @return String 91 */ 92 public String getAddress() 93 { 94 return this.address; 95 } //-- String getAddress() 96 97 /** 98 * Method getConfiguration. 99 * 100 * @return java.util.Properties 101 */ 102 public java.util.Properties getConfiguration() 103 { 104 if ( this.configuration == null ) 105 { 106 this.configuration = new java.util.Properties(); 107 } 108 109 return this.configuration; 110 } //-- java.util.Properties getConfiguration() 111 112 /** 113 * Get the mechanism used to deliver notifications. 114 * 115 * @return String 116 */ 117 public String getType() 118 { 119 return this.type; 120 } //-- String getType() 121 122 /** 123 * Get whether to send notifications on error. 124 * 125 * @return boolean 126 */ 127 public boolean isSendOnError() 128 { 129 return this.sendOnError; 130 } //-- boolean isSendOnError() 131 132 /** 133 * Get whether to send notifications on failure. 134 * 135 * @return boolean 136 */ 137 public boolean isSendOnFailure() 138 { 139 return this.sendOnFailure; 140 } //-- boolean isSendOnFailure() 141 142 /** 143 * Get whether to send notifications on success. 144 * 145 * @return boolean 146 */ 147 public boolean isSendOnSuccess() 148 { 149 return this.sendOnSuccess; 150 } //-- boolean isSendOnSuccess() 151 152 /** 153 * Get whether to send notifications on warning. 154 * 155 * @return boolean 156 */ 157 public boolean isSendOnWarning() 158 { 159 return this.sendOnWarning; 160 } //-- boolean isSendOnWarning() 161 162 /** 163 * Set 164 * 165 * <b>Deprecated</b>. Where to send the 166 * notification to - eg email address. 167 * 168 * 169 * 170 * @param address 171 */ 172 public void setAddress( String address ) 173 { 174 this.address = address; 175 } //-- void setAddress( String ) 176 177 /** 178 * Set extended configuration specific to this notifier goes 179 * here. 180 * 181 * @param configuration 182 */ 183 public void setConfiguration( java.util.Properties configuration ) 184 { 185 this.configuration = configuration; 186 } //-- void setConfiguration( java.util.Properties ) 187 188 /** 189 * Set whether to send notifications on error. 190 * 191 * @param sendOnError 192 */ 193 public void setSendOnError( boolean sendOnError ) 194 { 195 this.sendOnError = sendOnError; 196 } //-- void setSendOnError( boolean ) 197 198 /** 199 * Set whether to send notifications on failure. 200 * 201 * @param sendOnFailure 202 */ 203 public void setSendOnFailure( boolean sendOnFailure ) 204 { 205 this.sendOnFailure = sendOnFailure; 206 } //-- void setSendOnFailure( boolean ) 207 208 /** 209 * Set whether to send notifications on success. 210 * 211 * @param sendOnSuccess 212 */ 213 public void setSendOnSuccess( boolean sendOnSuccess ) 214 { 215 this.sendOnSuccess = sendOnSuccess; 216 } //-- void setSendOnSuccess( boolean ) 217 218 /** 219 * Set whether to send notifications on warning. 220 * 221 * @param sendOnWarning 222 */ 223 public void setSendOnWarning( boolean sendOnWarning ) 224 { 225 this.sendOnWarning = sendOnWarning; 226 } //-- void setSendOnWarning( boolean ) 227 228 /** 229 * Set the mechanism used to deliver notifications. 230 * 231 * @param type 232 */ 233 public void setType( String type ) 234 { 235 this.type = type; 236 } //-- void setType( String ) 237 238 239 private String modelEncoding = "UTF-8"; 240 241 /** 242 * Set an encoding used for reading/writing the model. 243 * 244 * @param modelEncoding the encoding used when reading/writing the model. 245 */ 246 public void setModelEncoding( String modelEncoding ) 247 { 248 this.modelEncoding = modelEncoding; 249 } 250 251 /** 252 * @return the current encoding used when reading/writing this model. 253 */ 254 public String getModelEncoding() 255 { 256 return modelEncoding; 257 } 258 }