Github user ahgittin commented on the pull request:

    https://github.com/apache/incubator-brooklyn/pull/108#issuecomment-51205959
  
    looks real good.  some comments:
    
    * can we make `Feed` an `EntityAdjunct` for consistency (and ultimately for 
better display in the GUI) ?
    * can you build on #106 so we get `uniqueTag` and tags and prevention of 
duplicate addition?
    * for things like `JmxFeed` do we need to do some special things to 
recreate the `JMXConnection` which I'd be surprised if it serializes (though 
presumably you've tested this) and to minimize the number of fields which need 
to be persisted?  (ie declare more things transient and ensure they are 
populated on first use)
    * is there any way to warn if a feed is not explicitly attached to an 
entity?
    * with the above we should have another pass at removing redundant cleanup 
logic (and connecting feeds in init, with "service_up" guards as you suggest)
    
    Re the last point this will be easier once some of the things I'm working 
on for intermediate `SERVICE_UP` sensors like `SERVICE_PROCESS_IS_RUNNING` is 
completed (soon!).
    
    You also asked whether switching to adjunct means that feeds should be 
persisted separately to the entities.  This feels like a good idea, e.g. in 
cases where feeds break.  (A feed seems more brittle to me than enrichers -- 
and both feel quite similar.)  Hopefully with `BrooklynObjectType` this becomes 
relatively easy.
    
    Longer term it might be nice to restructure persistence so that all 
adjuncts (except for shared locations?) are stored underneath the entity, e.g. 
directory structure:
    
        applications/
          12345678/
            entities/
              12345678/
                entity.xml
                enrichers/
                  ...
                feeds/
                  ...
    
    (but we have to be careful not to break existing persistence -- maybe 
support both, with adjunct dirs off the root always read, and written for items 
which aren't attached to entities, e.g. shared locations, but associated 
adjuncts moved when rewritten?)



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to