• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package co.nstant.in.cbor.builder;
2 
3 import co.nstant.in.cbor.model.Array;
4 import co.nstant.in.cbor.model.DataItem;
5 import co.nstant.in.cbor.model.Map;
6 
7 public class MapBuilder<T extends AbstractBuilder<?>> extends
8                 AbstractBuilder<T> {
9 
10     private final Map map;
11 
MapBuilder(T parent, Map map)12     public MapBuilder(T parent, Map map) {
13         super(parent);
14         this.map = map;
15     }
16 
put(DataItem key, DataItem value)17     public MapBuilder<T> put(DataItem key, DataItem value) {
18         map.put(key, value);
19         return this;
20     }
21 
put(long key, long value)22     public MapBuilder<T> put(long key, long value) {
23         put(convert(key), convert(value));
24         return this;
25     }
26 
put(long key, boolean value)27     public MapBuilder<T> put(long key, boolean value) {
28         put(convert(key), convert(value));
29         return this;
30     }
31 
put(long key, float value)32     public MapBuilder<T> put(long key, float value) {
33         put(convert(key), convert(value));
34         return this;
35     }
36 
put(long key, double value)37     public MapBuilder<T> put(long key, double value) {
38         put(convert(key), convert(value));
39         return this;
40     }
41 
put(long key, byte[] value)42     public MapBuilder<T> put(long key, byte[] value) {
43         put(convert(key), convert(value));
44         return this;
45     }
46 
put(long key, String value)47     public MapBuilder<T> put(long key, String value) {
48         put(convert(key), convert(value));
49         return this;
50     }
51 
put(String key, long value)52     public MapBuilder<T> put(String key, long value) {
53         put(convert(key), convert(value));
54         return this;
55     }
56 
put(String key, boolean value)57     public MapBuilder<T> put(String key, boolean value) {
58         put(convert(key), convert(value));
59         return this;
60     }
61 
put(String key, float value)62     public MapBuilder<T> put(String key, float value) {
63         put(convert(key), convert(value));
64         return this;
65     }
66 
put(String key, double value)67     public MapBuilder<T> put(String key, double value) {
68         put(convert(key), convert(value));
69         return this;
70     }
71 
put(String key, byte[] value)72     public MapBuilder<T> put(String key, byte[] value) {
73         map.put(convert(key), convert(value));
74         return this;
75     }
76 
put(String key, String value)77     public MapBuilder<T> put(String key, String value) {
78         put(convert(key), convert(value));
79         return this;
80     }
81 
putArray(DataItem key)82     public ArrayBuilder<MapBuilder<T>> putArray(DataItem key) {
83         Array array = new Array();
84         put(key, array);
85         return new ArrayBuilder<>(this, array);
86     }
87 
putArray(long key)88     public ArrayBuilder<MapBuilder<T>> putArray(long key) {
89         Array array = new Array();
90         put(convert(key), array);
91         return new ArrayBuilder<>(this, array);
92     }
93 
putArray(String key)94     public ArrayBuilder<MapBuilder<T>> putArray(String key) {
95         Array array = new Array();
96         put(convert(key), array);
97         return new ArrayBuilder<>(this, array);
98     }
99 
startArray(DataItem key)100     public ArrayBuilder<MapBuilder<T>> startArray(DataItem key) {
101         Array array = new Array();
102         array.setChunked(true);
103         put(key, array);
104         return new ArrayBuilder<>(this, array);
105     }
106 
startArray(long key)107     public ArrayBuilder<MapBuilder<T>> startArray(long key) {
108         return startArray(convert(key));
109     }
110 
startArray(String key)111     public ArrayBuilder<MapBuilder<T>> startArray(String key) {
112         Array array = new Array();
113         array.setChunked(true);
114         put(convert(key), array);
115         return new ArrayBuilder<>(this, array);
116     }
117 
putMap(DataItem key)118     public MapBuilder<MapBuilder<T>> putMap(DataItem key) {
119         Map nestedMap = new Map();
120         put(key, nestedMap);
121         return new MapBuilder<>(this, nestedMap);
122     }
123 
putMap(long key)124     public MapBuilder<MapBuilder<T>> putMap(long key) {
125         Map nestedMap = new Map();
126         put(convert(key), nestedMap);
127         return new MapBuilder<>(this, nestedMap);
128     }
129 
putMap(String key)130     public MapBuilder<MapBuilder<T>> putMap(String key) {
131         Map nestedMap = new Map();
132         put(convert(key), nestedMap);
133         return new MapBuilder<>(this, nestedMap);
134     }
135 
startMap(DataItem key)136     public MapBuilder<MapBuilder<T>> startMap(DataItem key) {
137         Map nestedMap = new Map();
138         nestedMap.setChunked(true);
139         put(key, nestedMap);
140         return new MapBuilder<>(this, nestedMap);
141     }
142 
startMap(long key)143     public MapBuilder<MapBuilder<T>> startMap(long key) {
144         return startMap(convert(key));
145     }
146 
startMap(String key)147     public MapBuilder<MapBuilder<T>> startMap(String key) {
148         return startMap(convert(key));
149     }
150 
end()151     public T end() {
152         return getParent();
153     }
154 
155 }
156