Skip to content

eclipse-uprotocol/up-kotlin

Repository files navigation

Eclipse uProtocol Kotlin Library

Overview

This library implements the uProtocol Language Specific Library Requirements for Kotlin defined in uProtocol Specifications. The library is organized into packages that are described in SDK Packages below. Each package contains a README.adoc file that describes the purpose of the package and how to use it.

The module contains the factory methods, serializers, and validators for all data types defined in the specifications, and any data models that either haven’t or couldn’t be defined in up-core-api yet.

Getting Started

Importing the sdk

To pull the Library from maven central, setting ${uprotocol.version} to the latest version of this library in your pom.xml file:

<!-- uProtocol Core -->
<dependency>
    <groupId>org.eclipse.uprotocol</groupId>
    <artifactId>up-kotlin</artifactId>
    <version>${uprotocol.version}</version>
</dependency>

Using The Library

Table 1. Package Folders
Folder Purpose

builder or factory

Contains factory methods for creating uProtocol data types

serializer

Contains serializers to convert the objects into byte or string form representation of said object

validator

Contains validators to validate the data types and report errors if the objects are missing or incorrect

Table 2. SDK Packages
Package Purpose

uuri

Uniform Resource Identifier (RFC3986), how uProtocol addresses things (devices, software, methods, topics, etc…​) on the network

uuid

Identifier used to uniquely identify (and timestamp) messages that are sent

transport

Interface declaration used for bidirectional point-2-point communication between uEs. This interface is then implemented by uPClient libraries for a given underlining transport (ex. Binder, MQTT, Zenoh, SOME/IP, DDS, HTTP, etc…​)

cloudevent

Common way to represent uProtocol messages using CloudEvent data model used by some transports (ex. MQTT, HTTP, etc…​)

rpc

RPC client and server-side interfaces that are to be implemented by uLink libraries

Note
Please visit the READMEs in SDK Packages for examples of how to use the different data types and their factories, validators, and serializers.

About

uProtocol Language Specific Library for Kotlin

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages