gvsig-tools / org.gvsig.tools / library / trunk / org.gvsig.tools / org.gvsig.tools.lib / src / main / java / org / gvsig / tools / dynobject / exception / DynFieldRequiredValueException.java @ 592
History | View | Annotate | Download (1.51 KB)
1 |
package org.gvsig.tools.dynobject.exception; |
---|---|
2 |
|
3 |
import org.gvsig.tools.dynobject.DynClass; |
4 |
import org.gvsig.tools.dynobject.DynField; |
5 |
import org.gvsig.tools.dynobject.DynObject; |
6 |
import org.gvsig.tools.dynobject.DynStruct; |
7 |
|
8 |
public class DynFieldRequiredValueException extends DynFieldValidateException { |
9 |
|
10 |
/**
|
11 |
*
|
12 |
*/
|
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."; |
16 |
|
17 |
public DynFieldRequiredValueException(DynField field, Object value) { |
18 |
super(MESSAGE_FORMAT, MESSAGE_KEY, serialVersionUID);
|
19 |
|
20 |
setValue("field", field.getName());
|
21 |
setValue(value); |
22 |
} |
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 |
} |
44 |
} |
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 |
|
58 |
} |