View Javadoc

1   package org.kuali.common.util.properties;
2   
3   import java.nio.charset.Charset;
4   
5   import org.kuali.common.util.Assert;
6   import org.kuali.common.util.Mode;
7   import org.kuali.common.util.property.PropertyFormat;
8   
9   public final class Location {
10  
11  	public static final Mode DEFAULT_MISSING_MODE = Mode.ERROR;
12  	public static final boolean DEFAULT_CACHEABLE = false;
13  	public static final PropertyFormat DEFAULT_PROPERTY_FORMAT = PropertyFormat.NORMAL;
14  	public static final String DEFAULT_ENCODING = Charset.defaultCharset().toString();
15  
16  	private final Mode missingMode;
17  	private final String encoding;
18  	private final PropertyFormat format;
19  	private final String value;
20  	private final boolean cacheable;
21  
22  	public Location(String value) {
23  		this(value, DEFAULT_ENCODING, DEFAULT_MISSING_MODE, DEFAULT_PROPERTY_FORMAT);
24  	}
25  
26  	public Location(String value, String encoding) {
27  		this(value, encoding, DEFAULT_MISSING_MODE, DEFAULT_PROPERTY_FORMAT);
28  	}
29  
30  	public Location(String value, String encoding, boolean cacheable) {
31  		this(value, encoding, DEFAULT_MISSING_MODE, DEFAULT_PROPERTY_FORMAT, cacheable);
32  	}
33  
34  	public Location(String value, String encoding, Mode missingMode, PropertyFormat format) {
35  		this(value, encoding, DEFAULT_MISSING_MODE, DEFAULT_PROPERTY_FORMAT, DEFAULT_CACHEABLE);
36  	}
37  
38  	public Location(String value, String encoding, Mode missingMode, PropertyFormat format, boolean cacheable) {
39  		Assert.noBlanks(value, encoding);
40  		Assert.noNulls(missingMode, format);
41  		this.value = value;
42  		this.encoding = encoding;
43  		this.missingMode = missingMode;
44  		this.format = format;
45  		this.cacheable = cacheable;
46  	}
47  
48  	public Mode getMissingMode() {
49  		return missingMode;
50  	}
51  
52  	public String getEncoding() {
53  		return encoding;
54  	}
55  
56  	public PropertyFormat getFormat() {
57  		return format;
58  	}
59  
60  	public String getValue() {
61  		return value;
62  	}
63  
64  	public boolean isCacheable() {
65  		return cacheable;
66  	}
67  
68  }