edgent-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (QUARKS-150) add Valve Predicate
Date Tue, 19 Apr 2016 21:47:25 GMT

    [ https://issues.apache.org/jira/browse/QUARKS-150?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15248738#comment-15248738

ASF GitHub Bot commented on QUARKS-150:

GitHub user dlaboss opened a pull request:


    [QUARKS-150] [REVIEW] add Value Recipe

    Open for review.
    can't merge until the Value implementation is merged: https://github.com/apache/incubator-quarks/pull/93

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/dlaboss/incubator-quarks-website quarks-150-addValveRecipe

Alternatively you can review and apply these changes as the patch at:


To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #47
commit 91e1a19afe5e1185e55d196922bd3e42081b1c81
Author: Dale LaBossiere <dlaboss@us.ibm.com>
Date:   2016-04-19T21:43:23Z

    [QUARKS-150] add Value Recipe


> add Valve Predicate
> -------------------
>                 Key: QUARKS-150
>                 URL: https://issues.apache.org/jira/browse/QUARKS-150
>             Project: Quarks
>          Issue Type: New Feature
>            Reporter: Dale LaBossiere
>            Assignee: Dale LaBossiere
> A Valve Predicate accepts tuples when its state is {@link State#OPEN}, otherwise it rejects
> A valve is typically used to dynamically control whether or not
> some downstream tuple processing is enabled.  A decision to change the
> state of the valve may be a result of local analytics or an external
> device command.
> [ fwiw, this is known as a 'Switch' utility operator in IBM Streams ]
> Maybe this belongs in quarks.topology.plumbing/PlumbingStreams, not quarks.analytics.sensors/Filters
like Deadband and Deadtime, since there's not really much "analytic" about it?
> E.g., a Valve might be used to control whether or not logging of tuples is enabled.
> ```
> TStream<JsonObject> stream = ...;
> Valve<JsonObject> valve = new Valve<>(Valve.State.CLOSED);
> stream.filter(valve).sink(someTupleLoggingConsumer);
> // from some analytic or device command handler...
>     valve.setState(Valve.State.OPEN);
> ```

This message was sent by Atlassian JIRA

View raw message