Add authorization header in SSE request
[ccsdk/sli/plugins.git] / restconf-client / provider / src / test / java / org / onap / ccsdk / sli / plugins / restconfdiscovery / SseServerMock.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - CCSDK
4  * ================================================================================
5  * Copyright (C) 2018 Huawei Technologies Co., Ltd. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20 package org.onap.ccsdk.sli.plugins.restconfdiscovery;
21
22 import org.glassfish.jersey.media.sse.EventOutput;
23 import org.glassfish.jersey.media.sse.OutboundEvent;
24 import org.glassfish.jersey.media.sse.SseFeature;
25
26 import javax.ws.rs.GET;
27 import javax.ws.rs.Path;
28 import javax.ws.rs.Produces;
29 import java.io.IOException;
30
31 @Path("events")
32 public class SseServerMock {
33
34     @GET
35     @Produces(SseFeature.SERVER_SENT_EVENTS)
36     public EventOutput getServerSentEvents() throws IOException {
37         String data = "{" +
38                 "\"ietf-restconf:notification\" : {" +
39                 "  \"eventTime\" : \"2017-10-25T08:22:33.44Z\"," +
40                 "    \"ietf-yang-push:push-change-update\": {" +
41                 "\"subscription-id\":\"89\"," +
42                 "\"datastore-changes\": {" +
43                 "\"ietf-yang-patch:yang-patch\":{" +
44                 "\"patch-id\":\"1\"," +
45                 "\"edit\":[{" +
46                 "\"edit-id\":\"edit1\"," +
47                 "\"operation\":\"merge\"," +
48                 "\"target\":\"/ietf-interfaces:interfaces-state\"," +
49                 "\"value\": {" +
50                 "\"ietf-interfaces:interfaces-state\":{"+
51                 "\"interface\": {" +
52                 "\"name\":\"eth0\"," +
53                 "\"oper-status\":\"down\"," +
54                 "}" +
55                 "}" +
56                 "}" +
57                 "}]"+
58                 "}" +
59                 "}" +
60                 "}" +
61                 "}" +
62                 "}";
63         final EventOutput result = new EventOutput();
64         result.write(new OutboundEvent.Builder().data(String.class, data).build());
65         result.close();
66         return result;
67     }
68 }