Initial OpenECOMP MSO commit
[so.git] / packages / arquillian-unit-tests / src / test / java / org / openecomp / mso / global_tests / asdc / notif_emulator / JsonArtifactInfoDeserializer.java
1 package org.openecomp.mso.global_tests.asdc.notif_emulator;
2
3 import java.io.IOException;
4 import java.util.List;
5
6 import org.codehaus.jackson.JsonParser;
7 import org.codehaus.jackson.JsonProcessingException;
8 import org.codehaus.jackson.map.DeserializationContext;
9 import org.codehaus.jackson.map.JsonDeserializer;
10 import org.codehaus.jackson.map.ObjectMapper;
11 import org.codehaus.jackson.type.TypeReference;
12
13 public class JsonArtifactInfoDeserializer extends JsonDeserializer<List<JsonArtifactInfo>>{
14
15         @Override
16         public List<JsonArtifactInfo> deserialize(JsonParser jp, DeserializationContext ctxt)
17                         throws IOException, JsonProcessingException {
18                 List<JsonArtifactInfo> jsonArtifactInfoList =  new ObjectMapper().readValue(jp, new TypeReference<List<JsonArtifactInfo>>(){}); 
19
20                 // For each artifact add the list of artifact retrieved 
21                 // This could be used later to index by UUID
22                 for (JsonArtifactInfo artifactInfo:jsonArtifactInfoList) {
23                         artifactInfo.addArtifactToUUIDMap(jsonArtifactInfoList);
24                 }
25                 return jsonArtifactInfoList;
26         }
27
28 }