1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.kew.api.document.attribute;
17
18 import javax.xml.bind.annotation.XmlAccessType;
19 import javax.xml.bind.annotation.XmlAccessorType;
20 import javax.xml.bind.annotation.XmlElement;
21 import javax.xml.bind.annotation.XmlRootElement;
22 import javax.xml.bind.annotation.XmlType;
23 import java.math.BigDecimal;
24
25
26
27
28
29
30
31 @XmlRootElement(name = DocumentAttributeDecimal.Constants.ROOT_ELEMENT_NAME)
32 @XmlAccessorType(XmlAccessType.NONE)
33 @XmlType(name = DocumentAttributeDecimal.Constants.TYPE_NAME, propOrder = {
34 DocumentAttributeDecimal.Elements.VALUE
35 })
36 public final class DocumentAttributeDecimal extends DocumentAttribute {
37
38 @XmlElement(name = Elements.VALUE, required = false)
39 private final BigDecimal value;
40
41 @SuppressWarnings("unused")
42 private DocumentAttributeDecimal() {
43 this.value = null;
44 }
45
46 private DocumentAttributeDecimal(Builder builder) {
47 super(builder.getName());
48 this.value = builder.getValue();
49 }
50
51 @Override
52 public BigDecimal getValue() {
53 return value;
54 }
55
56 @Override
57 public DocumentAttributeDataType getDataType() {
58 return DocumentAttributeDataType.DECIMAL;
59 }
60
61
62
63
64 public static final class Builder extends AbstractBuilder<BigDecimal> {
65
66
67
68
69
70
71
72
73 private Builder(String name) {
74 super(name);
75 }
76
77 public static Builder create(String name) {
78 return new Builder(name);
79 }
80
81 @Override
82 public DocumentAttributeDataType getDataType() {
83 return DocumentAttributeDataType.DECIMAL;
84 }
85
86 @Override
87 public DocumentAttributeDecimal build() {
88 return new DocumentAttributeDecimal(this);
89 }
90
91 }
92
93
94
95
96
97 static class Constants {
98 final static String ROOT_ELEMENT_NAME = "documentAttributeDecimal";
99 final static String TYPE_NAME = "DocumentAttributeDecimalType";
100 }
101
102
103
104
105 static class Elements {
106 final static String VALUE = "value";
107 }
108
109 }