-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
5 additions
and
20 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,22 +1,7 @@ | ||
# IoT Inventory - Demo RESTful HTTP API | ||
# OpenNess Demo Producer | ||
|
||
This project shows a demo implementation of a simple IoT device and location inventory through | ||
an HTTP RESTful API. | ||
Demo Producer for the OpenNess platform using the Java OpenNess Connector | ||
implementing a demo Traffic Information System (TIS) for real-time traffic event management. | ||
|
||
The implementation is based on the Java Framework Dropwizard (https://www.dropwizard.io/en/latest/) and the available APIs | ||
are also exposed using swagger through the following local link: http://127.0.0.1:7070/swagger | ||
|
||
APIs are exposed through a configurable port (7070) and accessible locally at: http://127.0.0.1:7070/api/iot/ | ||
|
||
The project includes a set of demo client classes to show how to interact with the designed APIs using Java and | ||
the Apache HTTP Client Library (https://hc.apache.org/httpcomponents-client-ga/). Additional example can be found at: https://mkyong.com/java/apache-httpclient-examples/ | ||
|
||
## Modeled REST Resources | ||
|
||
The IoT Inventory resources currently modeled are: | ||
|
||
- Location (/location): Geographic location where one or multiple IoT devices can be deployed | ||
- Device (/device): A generic representation of an IoT device with basic information and customizable attributes. | ||
In the current implementation device's data are not handled and they are out of the scope of the demo inventory. | ||
- Users (/user): A user interacting with registered IoT devices and locations. Multiple roles can be managed and | ||
lists of allowed locations and devices are associated to each user. | ||
The Producer exposes a HTTP RESTful API to retrieve the list of available Traffic Event. | ||
At the same time the Producer generates events and the associated notification for OpenNess subscribed consumers. |