1 /* 2 * Copyright (C) Christian Schulte, 2005-206 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 9 * o Redistributions of source code must retain the above copyright 10 * notice, this list of conditions and the following disclaimer. 11 * 12 * o Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in 14 * the documentation and/or other materials provided with the 15 * distribution. 16 * 17 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 18 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 19 * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL 20 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * 28 * $JOMC: PropertiesResourceType.java 3838 2011-10-08 20:15:41Z schulte2005 $ 29 * 30 */ 31 package org.jomc.ant.types; 32 33 import org.apache.commons.lang.builder.ToStringBuilder; 34 35 /** 36 * Datatype describing a properties resource. 37 * 38 * @author <a href="mailto:schulte2005@users.sourceforge.net">Christian Schulte</a> 39 * @version $JOMC: PropertiesResourceType.java 3838 2011-10-08 20:15:41Z schulte2005 $ 40 */ 41 public class PropertiesResourceType extends ResourceType 42 { 43 44 /** The format of the properties resource. */ 45 private PropertiesFormatType format; 46 47 /** Creates a new {@code PropertiesResourceType} instance. */ 48 public PropertiesResourceType() 49 { 50 super(); 51 } 52 53 /** 54 * Gets the value of the {@code format} property. 55 * 56 * @return The value of the {@code format} property. 57 * 58 * @see #setFormat(org.jomc.ant.types.PropertiesFormatType) 59 */ 60 public final PropertiesFormatType getFormat() 61 { 62 if ( this.format == null ) 63 { 64 this.format = PropertiesFormatType.PLAIN; 65 } 66 67 return this.format; 68 } 69 70 /** 71 * Sets the value of the {@code format} property. 72 * 73 * @param value The new value of the {@code format} property or {@code null}. 74 * 75 * @see #getFormat() 76 */ 77 public final void setFormat( final PropertiesFormatType value ) 78 { 79 this.format = value; 80 } 81 82 /** 83 * Creates and returns a copy of this object. 84 * 85 * @return A copy of this object. 86 */ 87 @Override 88 public PropertiesResourceType clone() 89 { 90 return (PropertiesResourceType) super.clone(); 91 } 92 93 /** 94 * Creates and returns a string representation of the object. 95 * 96 * @return A string representation of the object. 97 */ 98 @Override 99 public String toString() 100 { 101 return ToStringBuilder.reflectionToString( this ); 102 } 103 104 }