dba4a0dea5320f3c27aaa78b74bee4415d9b63fa
[so.git] /
1 package org.openecomp.mso.yangDecoder.transform.impl;
2
3 import com.google.common.base.Charsets;
4 import org.opendaylight.netconf.sal.rest.impl.JsonNormalizedNodeBodyReader;
5 import org.opendaylight.netconf.sal.rest.impl.NormalizedNodeJsonBodyWriter;
6 import org.opendaylight.netconf.sal.restconf.impl.NormalizedNodeContext;
7 import org.slf4j.Logger;
8 import org.slf4j.LoggerFactory;
9
10 import javax.ws.rs.core.MediaType;
11 import java.io.ByteArrayInputStream;
12 import java.io.ByteArrayOutputStream;
13 import java.io.IOException;
14 import java.io.InputStream;
15 import java.lang.annotation.Annotation;
16
17 /**
18  * Created by Administrator on 2017/3/17.
19  */
20 public class YangDataTransformNN2JsonServiceImpl {
21     private static final Logger LOG = LoggerFactory.getLogger(YangDataTransformNN2JsonServiceImpl.class);
22     private static final Annotation[] EMPTY_ANNOTATIONS = new Annotation[0];
23
24     public NormalizedNodeContext transformNNCFromString(String uriPath,String jsonpayload,boolean isPost){
25
26         InputStream entityStream = new ByteArrayInputStream(jsonpayload.getBytes(Charsets.UTF_8));
27         NormalizedNodeContext normalnodes3 = JsonNormalizedNodeBodyReader.readFrom(uriPath, entityStream, isPost);
28         return normalnodes3;
29     }
30     public String transformNNCToString(NormalizedNodeContext readData) throws IOException {
31         NormalizedNodeJsonBodyWriter writer = new NormalizedNodeJsonBodyWriter();
32         ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
33         //readData.getWriterParameters().isPrettyPrint()
34         writer.writeTo(readData, NormalizedNodeContext.class, null, EMPTY_ANNOTATIONS,
35                 MediaType.APPLICATION_JSON_TYPE, null, outputStream );
36         return outputStream.toString(Charsets.UTF_8.name());
37     }
38     public NormalizedNodeContext transformRPCNNCFromString(String uriPath,String jsonpayload)
39     {
40         return transformNNCFromString(uriPath,jsonpayload,true);
41     }
42     public NormalizedNodeContext transformDataObjectNNCFromString(String uriPath,String jsonpayload,boolean ispost)
43     {
44         return transformNNCFromString(uriPath,jsonpayload,ispost);
45     }
46     public NormalizedNodeContext transformNotficationNNCFromString(String uriPath,String jsonpayload)
47     {
48         return transformNNCFromString(uriPath,jsonpayload,true);
49     }
50 }