Edgent Java support

The Edgent runtime is supported on all Java 8 SE, Java 7 SE, and Android platforms with the exceptions noted below.

An Edgent binary release bundle has a directory for each of the target platforms. Each target platform directory contains a set of jars for that platform

  • java8 - Java 8 SE
  • java7 - Java 7 SE
  • android - Android

When building an Edgent release (./gradlew release) the above platform directories are in build/distributions. See DEVELOPMENT.md for more information.

This page documents which jars are expected to work in each environment.

A blank entry means a jar is currently not supported in that environment and no investigation has taken place to see if it can be supported.

Core

JarJava 8 SEJava 7 SEAndroidNotes
edgent.api.execution.jaryesyesyes
edgent.api.function.jaryesyesyes
edgent.api.graph.jaryesyesyes
edgent.api.oplet.jaryesyesyes
edgent.api.topology.jaryesyesyes
edgent.api.window.jaryesyesyes
edgent.providers.development.jaryesnoUses JMX, For development only, not deployment
edgent.providers.direct.jaryesyesyes
edgent.providers.iot.jaryesyesyes
edgent.runtime.appservice.jaryesyesyes
edgent.runtime.etiao.jaryesyesyes
edgent.runtime.jmxcontrol.jaryesyesnoUses JMX
edgent.runtime.jobregistry.jaryes
edgent.runtime.jsoncontrol.jaryesyesyes
edgent.spi.graph.jaryesyesyes
edgent.spi.topology.jaryesyesyes

Connectors

JarJava 8 SEJava 7 SEAndroidNotes
edgent.connectors.common.jaryesyesyes
edgent.connectors.command.jaryes
edgent.connectors.csv.jaryes
edgent.connectors.file.jaryes
edgent.connectors.http.jaryesyesyes
edgent.connectors.iotf.jaryesyesyes
edgent.connectors.iot.jaryesyesyes
edgent.connectors.jdbc.jaryes
edgent.connectors.kafka.jaryes
edgent.connectors.mqtt.jaryes
edgent.connectors.pubsub.jaryesyesyes
edgent.connectors.serial.jaryes
edgent.connectors.wsclient.jaryes
edgent.connectors.wsclient-javax.websocket.jaryes
edgent.javax.websocket.jaryes

Applications

JarJava 8 SEJava 7 SEAndroidNotes
edgent.apps.iot.jaryesyesyes
edgent.apps.runtime.jaryesyesyes

Analytics

JarJava 8 SEJava 7 SEAndroidNotes
edgent.analytics.math3.jaryes
edgent.analytics.sensors.jaryesyesyes

Utilities

JarJava 8 SEJava 7 SEAndroidNotes
edgent.utils.metrics.jaryes
edgent.utils.streamscope.jaryes

Development Console

JarJava 8 SEJava 7 SEAndroidNotes
edgent.console.servlets.jaryesnoUses JMX, Servlet
edgent.console.server.jaryesnoUses JMX, Servlet

Android

JarJava 8 SEJava 7 SEAndroidNotes
edgent.android.topology.jarnonoyes
edgent.android.hardware.jarnonoyes

Java API Usage

Documented use of Java packages outside of the Java core packages. Java core has a number of definitions, but at least those outside of the Java 8 compact1 definition.

FeaturePackagesEdgent UsageNotes
JMXjava.lang.management, javax.managment*JMX not supported on Android
JMXutils/metricsOptional utility methods
JMXconsole/servlets, runtime/jmxcontrol
Servletjavax.servlet*console/servlets
Websocketjavax.websocketconnectors/edgent.javax.websocket, connectors/wsclient-javax-websocket, connectors/javax.websocket-client
JDBCjava.sql, javax.sqlconnectors/jdbc