View Javadoc

1   package org.naftulin.configmgr.content;
2   
3   import org.naftulin.configmgr.parsers.ConfigEntryParser;
4   import org.naftulin.configmgr.parsers.XmlFileParserImpl;
5   import org.apache.commons.lang.builder.ToStringBuilder;
6   
7   
8   public class XmlRecordImpl extends AbstractRecordImpl {
9   	private String className;
10  
11  	/***
12  	 * Constructs a record without specifying the key or file name.
13  	 */
14  	public XmlRecordImpl() {
15  		super();
16  	}
17  
18  	/***
19  	 * Constructs a record with the key and file name specified.
20  	 * @param key the key associated with the record.
21  	 * @param fileName the file name associated with the record.
22  	 */
23  	public XmlRecordImpl(final String key, final String fileName, final String className) {
24  		super(key, fileName);
25  		this.className = className;
26  	}
27  
28  	/***
29  	 * Returns an instance of  {@link org.naftulin.configmgr.parsers.PropertyFileParserImpl parser} 
30  	 * that parses a property file and stores it as {@link java.util.Properties properties}.
31  	 * @return the parser that can parse the file to extract the configuration. 
32  	 */
33  	public ConfigEntryParser getParser() {
34  		return new XmlFileParserImpl(className);
35  	}
36  
37  	
38  	public String getClassName() {
39  		return className;
40  	}
41  
42  	public void setClassName(final String className) {
43  		this.className = className;
44  	}
45  
46  	/***
47  	 * Returns the string representation of the xml record.
48  	 * @return the string representation of the xml record.
49  	 */
50  	public String toString() {
51  		return new ToStringBuilder(this).append("key", this.getKey()).append(
52  				"parser", this.getParser()).append("fileName",
53  				this.getFileName()).toString();
54  	}
55  	
56  	
57  	
58  }