Added resource /streams/stream/<streamName>
authorMartin Sunal <msunal@cisco.com>
Sun, 2 Feb 2014 23:26:58 +0000 (00:26 +0100)
committerMartin Sunal <msunal@cisco.com>
Tue, 4 Feb 2014 20:35:05 +0000 (21:35 +0100)
commitf3d2cb8f46fcd55e37ff7f96753282afdead9f09
tree425f2f856a89fd166a170f5b1894eb591f87bb37
parent7cf4c6ebb244a42f7d76c3b3896fff46432de640
Added resource /streams/stream/<streamName>

- added netty web socket server - port 8181

Subscriber can be registered for notifications in this flow:
1. Subscriber invokes RPC create-data-change-event-subscription with input element regarding to module sal-remote revision "2014-01-14"
2. Subscriber gets sream name as a response from server
3. Subscriber calls GET operation on /streams/stream/<streamName>
4. Subscriber gets response with status code 200 OK and header field Location contains URI of web socket server
5. Subscriber creates web socket http connection to obtained URI in step 4.
6. Subscriber can be unregistered from receiving notifications by sending CloseWebSocketFrame with reasonText containing stream name

Change-Id: I92925f5a50b2ceadf2cc8f0eaee2c99dd6a63d8d
Signed-off-by: Martin Sunal <msunal@cisco.com>
18 files changed:
opendaylight/md-sal/sal-rest-connector/pom.xml
opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/rest/api/RestconfService.java
opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/rest/impl/JsonMapper.java
opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/rest/impl/RestconfProvider.java
opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/impl/BrokerFacade.xtend
opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/impl/ControllerContext.xtend
opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/impl/RestconfImpl.xtend
opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/streams/listeners/ListenerAdapter.java [new file with mode: 0644]
opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/streams/listeners/Notificator.java [new file with mode: 0644]
opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/streams/websockets/WebSocketServer.java [new file with mode: 0644]
opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/streams/websockets/WebSocketServerHandler.java [new file with mode: 0644]
opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/streams/websockets/WebSocketServerInitializer.java [new file with mode: 0644]
opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/RestOperationUtils.java
opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/websockets/client/IClientMessageCallback.java [new file with mode: 0644]
opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/websockets/client/WebSocketClient.java [new file with mode: 0644]
opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/websockets/client/WebSocketClientHandler.java [new file with mode: 0644]
opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/websockets/test/RestStream.java [new file with mode: 0644]
opendaylight/md-sal/sal-rest-connector/src/test/resources/full-versions/yangs/sal-remote@2014-01-14.yang [new file with mode: 0644]