Revision 592 org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/dynobject/exception/DynFieldRequiredValueException.java

View differences:

DynFieldRequiredValueException.java
1 1
package org.gvsig.tools.dynobject.exception;
2 2

  
3
import org.gvsig.tools.dynobject.DynClass;
3 4
import org.gvsig.tools.dynobject.DynField;
5
import org.gvsig.tools.dynobject.DynObject;
6
import org.gvsig.tools.dynobject.DynStruct;
4 7

  
5 8
public class DynFieldRequiredValueException extends DynFieldValidateException {
6 9

  
......
8 11
	 * 
9 12
	 */
10 13
	private static final long serialVersionUID = -7813629748228774775L;
14
	private final static String MESSAGE_FORMAT = "Field '%(field)': Value required.";
15
	private final static String MESSAGE_KEY = "_Field_XfieldX_Value_required.";
11 16

  
12 17
	public DynFieldRequiredValueException(DynField field, Object value) {
13
		super(
14
			"Required field '%(field)' is not valid with value '%(value)'.",
15
			"_required_field_XfieldX_is_not_valid",
16
			serialVersionUID
17
		);
18
		setValue("field",field);
19
        setValue("value",value);
18
		super(MESSAGE_FORMAT, MESSAGE_KEY, serialVersionUID);
19

  
20
		setValue("field", field.getName());
21
		setValue(value);
20 22
	}
21
	
22
	public DynField getDynField(){
23
	    return (DynField) this.values().get("field");
23

  
24
	private void setValue(Object value) {
25
		try {
26
			if (value instanceof DynObject) {
27
				setValue("value", ((DynObject) value).getDynClass().getName());
28
				return;
29
			} else if (value instanceof DynClass) {
30
				setValue("value", ((DynClass) value).getName());
31
				return;
32
			} else if (value instanceof DynStruct) {
33
				setValue("value", ((DynStruct) value).getName());
34
				return;
35
			}
36
			if (value == null) {
37
				setValue("value", "null");
38
			} else {
39
				setValue("value", value.toString());
40
			}
41
		} catch (Exception e) {
42
			setValue("value", "(unknow)");
43
		}
24 44
	}
25
	
26
	public String getDynFieldName(){
27
        return this.getDynField().getName();
28
    }
29
	
30
    public Object getValueOfException(){
31
        return this.values().get("value");
32
    }
33 45

  
46
	public DynField getDynField() {
47
		return (DynField) this.values().get("field");
48
	}
49

  
50
	public String getDynFieldName() {
51
		return this.getDynField().getName();
52
	}
53

  
54
	public Object getValueOfException() {
55
		return this.values().get("value");
56
	}
57

  
34 58
}

Also available in: Unified diff