[
https://issues.apache.org/jira/browse/EDGENT-407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dale LaBossiere resolved EDGENT-407.
------------------------------------
Resolution: Fixed
resolved via https://github.com/apache/incubator-edgent/pull/304
> JsonFunctions: more convenience functions for creation and unpartitioned
> window
> -------------------------------------------------------------------------------
>
> Key: EDGENT-407
> URL: https://issues.apache.org/jira/browse/EDGENT-407
> Project: Edgent
> Issue Type: Wish
> Components: API
> Reporter: Dale LaBossiere
> Assignee: Dale LaBossiere
>
> Recently I've found myself repetitively doing the following when transforming
> a stream of simple numerics into a JsonObject (e.g., for publishing via
> IotDevice(TStream<JsonObject>)):
> {code}
> TStream<Double> s = ...
> TStream<JsonObject> js = s.map(val -> {
> JsonObject jo = new JsonObject();
> jo.addProperty("propName", val);
> return jo.
> });
> {code}
> Unfortunately, addProperty() returns void so the above can't be reduced to
> something like:
> {code}
> return new JsonObject().addProperty("propName", val)
> {code}
> I'd like an ease-of-use function like:
> {code}
> TStream<JsonObject> js = s.map(JsonFunctions.valueOfNumber("propName"));
> {code}
> For completeness, there should also be {{valueOfString(), valueOfCharacter(),
> valueOfBoolean()}}.
> Also, JsonAnalytics works with JsonElement partitioned windows:
> {{TWindow<JsonObject,JsonElement>}}. It should be trivial to be able to
> specify an unpartitioned window. {{Functions.unpartitioned()}} provides that
> for Integer keyed windows. There should be a corresponding
> {{JsonFunctions.unpartitioned()}}.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)