brooklyn-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Graeme-Miller <...@git.apache.org>
Subject [GitHub] brooklyn-server pull request #818: More on adjunct highlights
Date Wed, 13 Sep 2017 15:25:59 GMT
Github user Graeme-Miller commented on a diff in the pull request:

    https://github.com/apache/brooklyn-server/pull/818#discussion_r138642446
  
    --- Diff: core/src/main/java/org/apache/brooklyn/core/objs/AbstractEntityAdjunct.java
---
    @@ -568,6 +570,98 @@ public void setUniqueTag(String uniqueTag) {
             return highlightsToReturn;
         }
     
    +    /** Records a named highlight against this object, for persistence and API access.
    +     * See common highlights including {@link #HIGHLIGHT_NAME_LAST_ACTION} and
    +     * {@link #HIGHLIGHT_NAME_LAST_CONFIRMATION}.
    +     * Also see convenience methods eg  {@link #highlightOngoing(String, String)} and
{@link #highlight(String, String, Task)}
    +     * and {@link HighlightTuple}. 
    +     */
    +    protected void setHighlight(String name, HighlightTuple tuple) {
    +        highlights.put(name, tuple);
    +    }
    +
    +    /** As {@link #setHighlight(String, HighlightTuple)}, convenience for recording an
item which is intended to be ongoing. */
    +    protected void highlightOngoing(String name, String description) {
    +        highlights.put(name, new HighlightTuple(description, 0, null));
    +    }
    +    /** As {@link #setHighlight(String, HighlightTuple)}, convenience for recording an
item with the current time. */
    +    protected void highlightNow(String name, String description) {
    +        highlights.put(name, new HighlightTuple(description, System.currentTimeMillis(),
null));
    +    }
    +    /** As {@link #setHighlight(String, HighlightTuple)}, convenience for recording an
item with the current time and given task. */
    +    protected void highlight(String name, String description, @Nullable Task<?>
t) {
    +        highlights.put(name, new HighlightTuple(description, System.currentTimeMillis(),
t!=null ? t.getId() : null));
    +    }
    +    
    +    /** As {@link #setHighlight(String, HighlightTuple)} for {@link #HIGHLIGHT_NAME_TRIGGERS}
(as ongoing). */
    +    protected void highlightTriggers(String description) {
    +        highlightOngoing(HIGHLIGHT_NAME_TRIGGERS, description);
    +    }
    +    protected <T> void highlightTriggers(Sensor<?> s, Object source) {
    +        highlightTriggers(Collections.singleton(s), Collections.singleton(source));
    +    }
    +    protected <T> void highlightTriggers(Iterable<? extends Sensor<? extends
T>> s, Object source) {
    +        highlightTriggers(s, (Iterable<?>) (source instanceof Iterable ? (Iterable<?>)source
: Collections.singleton(source)));
    +    }
    +    protected <U> void highlightTriggers(Sensor<?> s, Iterable<U> sources)
{
    +        highlightTriggers(Collections.singleton(s), sources);
    +    }
    +    protected <T,U> void highlightTriggers(Iterable<? extends Sensor<? extends
T>> sensors, Iterable<U> sources) {
    +        StringBuilder msg = new StringBuilder("Listening for ");
    +        boolean firstWord = true;
    +        if (sensors!=null) for (Object s: sensors) {
    --- End diff --
    
    do we have a style guide for brooklyn? I have never seen someone put a for loop on the
same line as an if. Seems to break with our coding conventions.


---

Mime
View raw message