2 * Copyright 2015 Samsung Electronics All Rights Reserved.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package oic.simulator.clientcontroller.utils;
21 import org.oic.simulator.AttributeValue;
22 import org.oic.simulator.AttributeValueVisitor;
23 import org.oic.simulator.SimulatorResourceAttribute;
24 import org.oic.simulator.SimulatorResourceModel;
26 public class AttributeValueStringConverter implements
27 AttributeValueVisitor.VisitingMethods<String> {
29 private AttributeValue mValue;
31 public AttributeValueStringConverter(AttributeValue value) {
36 public String toString() {
37 AttributeValueVisitor visitor = new AttributeValueVisitor(mValue, this);
38 return (String) visitor.visit();
42 public String visitingValue(Integer value) {
43 return value.toString();
47 public String visitingValue(Double value) {
48 return value.toString();
52 public String visitingValue(Boolean value) {
53 return value.toString();
57 public String visitingValue(String value) {
58 return new String(value);
62 public String visitingValue(SimulatorResourceModel value) {
63 StringBuilder result = new StringBuilder();
66 for (Map.Entry<String, SimulatorResourceAttribute> entry : value
67 .getAttributes().entrySet()) {
71 result.append("\"" + entry.getKey() + "\":");
72 AttributeValue attributeValue = entry.getValue().value();
73 result.append(new AttributeValueStringConverter(attributeValue)
78 return result.toString();
82 public String visitingValue(Integer[] values) {
83 StringBuilder result = new StringBuilder();
86 for (Integer value : values) {
90 result.append(value.toString());
94 return result.toString();
98 public String visitingValue(Double[] values) {
99 StringBuilder result = new StringBuilder();
101 boolean first = true;
102 for (Double value : values) {
106 result.append(value.toString());
110 return result.toString();
114 public String visitingValue(Boolean[] values) {
115 StringBuilder result = new StringBuilder();
117 boolean first = true;
118 for (Boolean value : values) {
122 result.append(value.toString());
126 return result.toString();
130 public String visitingValue(String[] values) {
131 StringBuilder result = new StringBuilder();
133 boolean first = true;
134 for (String value : values) {
138 result.append(value);
142 return result.toString();
146 public String visitingValue(SimulatorResourceModel[] values) {
147 StringBuilder result = new StringBuilder();
149 boolean first = true;
150 for (SimulatorResourceModel value : values) {
154 AttributeValue attributeValue = new AttributeValue(value);
155 result.append(new AttributeValueStringConverter(attributeValue)
160 return result.toString();
164 public String visitingValue(Integer[][] values) {
165 StringBuilder result = new StringBuilder();
167 boolean first = true;
168 for (Integer[] value : values) {
172 AttributeValue attributeValue = new AttributeValue(value);
173 result.append(new AttributeValueStringConverter(attributeValue)
178 return result.toString();
182 public String visitingValue(Double[][] values) {
183 StringBuilder result = new StringBuilder();
185 boolean first = true;
186 for (Double[] value : values) {
190 AttributeValue attributeValue = new AttributeValue(value);
191 result.append(new AttributeValueStringConverter(attributeValue)
196 return result.toString();
200 public String visitingValue(Boolean[][] values) {
201 StringBuilder result = new StringBuilder();
203 boolean first = true;
204 for (Boolean[] value : values) {
208 AttributeValue attributeValue = new AttributeValue(value);
209 result.append(new AttributeValueStringConverter(attributeValue)
214 return result.toString();
218 public String visitingValue(String[][] values) {
219 StringBuilder result = new StringBuilder();
221 boolean first = true;
222 for (String[] value : values) {
226 AttributeValue attributeValue = new AttributeValue(value);
227 result.append(new AttributeValueStringConverter(attributeValue)
232 return result.toString();
236 public String visitingValue(SimulatorResourceModel[][] values) {
237 StringBuilder result = new StringBuilder();
239 boolean first = true;
240 for (SimulatorResourceModel[] value : values) {
244 AttributeValue attributeValue = new AttributeValue(value);
245 result.append(new AttributeValueStringConverter(attributeValue)
250 return result.toString();
254 public String visitingValue(Integer[][][] values) {
255 StringBuilder result = new StringBuilder();
257 boolean first = true;
258 for (Integer[][] value : values) {
262 AttributeValue attributeValue = new AttributeValue(value);
263 result.append(new AttributeValueStringConverter(attributeValue)
268 return result.toString();
272 public String visitingValue(Double[][][] values) {
273 StringBuilder result = new StringBuilder();
275 boolean first = true;
276 for (Double[][] value : values) {
280 AttributeValue attributeValue = new AttributeValue(value);
281 result.append(new AttributeValueStringConverter(attributeValue)
286 return result.toString();
290 public String visitingValue(Boolean[][][] values) {
291 StringBuilder result = new StringBuilder();
293 boolean first = true;
294 for (Boolean[][] value : values) {
298 AttributeValue attributeValue = new AttributeValue(value);
299 result.append(new AttributeValueStringConverter(attributeValue)
304 return result.toString();
308 public String visitingValue(String[][][] values) {
309 StringBuilder result = new StringBuilder();
311 boolean first = true;
312 for (String[][] value : values) {
316 AttributeValue attributeValue = new AttributeValue(value);
317 result.append(new AttributeValueStringConverter(attributeValue)
322 return result.toString();
326 public String visitingValue(SimulatorResourceModel[][][] values) {
327 StringBuilder result = new StringBuilder();
329 boolean first = true;
330 for (SimulatorResourceModel[][] value : values) {
334 AttributeValue attributeValue = new AttributeValue(value);
335 result.append(new AttributeValueStringConverter(attributeValue)
340 return result.toString();