09fd9480300c079a43b188d46f81340803a78e63
[sdc.git] /
1 package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
2
3 import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
4 import org.apache.commons.io.IOUtils;
5 import org.apache.commons.lang.ArrayUtils;
6
7 import java.io.IOException;
8 import java.io.InputStream;
9 import java.util.Arrays;
10 import java.util.Objects;
11
12 class VspZusammenUtil {
13
14   private VspZusammenUtil(){}
15
16   static ZusammenElement aggregateElements(ZusammenElement... elements) {
17     ZusammenElement head = null;
18     ZusammenElement father = null;
19     for (ZusammenElement element : elements) {
20       if (Objects.isNull(head)) {
21         head = father = element;
22       } else {
23         if (father != null) {
24           father.getSubElements().add(element);
25           father = element;
26         }
27       }
28     }
29
30     return head;
31   }
32
33   static boolean isEmpty(InputStream elementData) {
34     byte[] byteElementData;
35     if (Objects.isNull(elementData)) {
36       return true;
37     }
38     try {
39       byteElementData = IOUtils.toByteArray(elementData);
40     } catch (IOException e) {
41       return false;
42     }
43     return ArrayUtils.isEmpty(byteElementData);
44   }
45
46   static boolean hasEmptyData(InputStream elementData) {
47     String EMPTY_DATA = "{}";
48     byte[] byteElementData;
49     try {
50       byteElementData = IOUtils.toByteArray(elementData);
51     } catch (IOException ex) {
52       return false;
53     }
54     if (Arrays.equals(EMPTY_DATA.getBytes(), byteElementData)) {
55       return true;
56     }
57     return false;
58   }
59 }