-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding more README for how to use the SDK per package #17
- Loading branch information
czfdcn
committed
Aug 24, 2023
1 parent
2aa3f03
commit 4bf89a8
Showing
6 changed files
with
115 additions
and
55 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
21 changes: 21 additions & 0 deletions
21
src/main/java/org/eclipse/uprotocol/cloudevent/README.adoc
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 |
---|---|---|
@@ -0,0 +1,21 @@ | ||
= uProtocol CloudEvents | ||
:toc: | ||
:sectnums: | ||
|
||
|
||
== Overview | ||
|
||
https://github.com/eclipse-uprotocol/uprotocol-spec/blob/main/up-l1/cloudevents.adoc[uProtocol CloudEvents] is a common message envelope that could be used to carry way to represent uProtocol transport layer information `UUri` (source), `UPayload`, and `UAttributes`. `CloudEvents` are used by a number of Device-2-Cloud and Cloud-2-Device based transports such as MQTT and HTTP, however it could also be used by any transport (ex. Binder). | ||
|
||
NOTE: CloudEvent is not, nor was not, meant to be _the_ only message format used below or above the transport layer. | ||
|
||
=== CloudEventFactory | ||
Factory class that builds the various types of CloudEvents for uProtocol (publish, notification, request, response) | ||
|
||
== Examples | ||
|
||
The SDK contains comprehensive tests, the best place to look at how all the APIs are used are at: | ||
|
||
* link:src/test/java/org/eclipse/uprotocol/uri/factory/UriFactoryTest.java[UriFactoryTest.java] | ||
|
||
* link:src/test/java/org/eclipse/uprotocol/cloudevent/factory/CloudEventFactoryTest.java[CloudEventFactoryTest.java] |
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 |
---|---|---|
@@ -0,0 +1,7 @@ | ||
= uProtocol Rpc Interfaces | ||
:toc: | ||
:sectnums: | ||
|
||
== Overview | ||
|
||
_comming soon_ |
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 |
---|---|---|
@@ -0,0 +1,51 @@ | ||
= uProtocol URI | ||
:toc: | ||
:sectnums: | ||
|
||
|
||
== Overview | ||
|
||
The following folder contains the data model, factory, and validators to implement https://github.com/eclipse-uprotocol/uprotocol-spec/blob/main/basics/uri.adoc[uProtocol URI Specifications] | ||
|
||
Matches the uProtocol URI Format. and is used to define source and sink (destination) attributes of uProtocol. | ||
The factory builds URIs. | ||
|
||
URI is used as a method to uniquely identify devices, services, and resources on the network. | ||
|
||
== UUri | ||
|
||
*An Uri is built from the following elements:* | ||
|
||
* *UAuthority* - represents the device and domain of the software, the deployment. You can specify local or remote options. | ||
* *UEntity* - The Software Entity defines the software name and version. | ||
* *UResource* - The resource of the software can be a service name, and instance in the service and the name of the protobuf IDL message. | ||
|
||
=== UAuthority | ||
|
||
An Authority consists of a device and a domain per uProtocol URI format. | ||
|
||
An Authority represents the deployment location of a specific Software Entity. | ||
|
||
=== UEntity - uE | ||
|
||
An Software Entity is a piece of software deployed somewhere on a device. The uE is used in the source and sink parts of communicating software. | ||
|
||
A uE that *publishes* events is a *Service* role. | ||
|
||
A uE that *consumes* events is an *Application* role. | ||
|
||
A uE may combine bother Service and Application roles. | ||
|
||
|
||
=== UResource | ||
|
||
A service API - defined in the uE - has Resources and Methods. Both of these are represented by the UResource class. | ||
|
||
An UResource is something that can be manipulated/controlled/exposed by a service. | ||
|
||
Resources are unique when prepended with UAuthority that represents the device and Software Entity that represents the service. | ||
|
||
An Resource represents a resource from a Service such as "door" and an optional specific instance such as "front_left". | ||
In addition, it can optionally contain the name of the resource Message type, such as "Door". | ||
|
||
The Message type matches the protobuf service IDL that defines structured data types. A message is a data structure type used to define data that is passed in events and rpc methods. |
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 |
---|---|---|
@@ -0,0 +1,7 @@ | ||
= uProtocol Transport Interface & Data Model | ||
:toc: | ||
:sectnums: | ||
:source-highlighter: prettify | ||
|
||
== Overview | ||
The purpose of this moduel is to provide the Java implementation of https://github.com/eclipse-uprotocol/uprotocol-spec/blob/main/up-l1/README.adoc[uTransport API & Data Model]. The transport API is used by all uE developers to send and receive messages across any transport. The interface is to be implemented by communication transport developers (i.e. developing a uTransport for SOME/IP, DDS, Zenoh, MQTT, etc...). |
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 |
---|---|---|
@@ -0,0 +1,8 @@ | ||
= uProtocol UUID | ||
:toc: | ||
:sectnums: | ||
|
||
== Overview | ||
|
||
_comming soon_ | ||
|