)]}'
{"aodh/event.py":[{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"e6657cd3f0c5c3ca4577a2d82ec65b4ff632d5cc","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"ALARM_TYPE_EVENT \u003d \u0027event\u0027"},{"line_number":24,"context_line":"EVENT_ALARM_TOPIC \u003d \u0027alarm.all\u0027"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"class EventAlarmEndpoint(object):"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_f9fd1a6f","line":24,"updated":"2015-08-17 21:44:49.000000000","message":"this should be configurable to allow for pipeline to publish to different queues, and evaluators to be processing different queues","commit_id":"0cc22e668095d9fcf18beca5bbef7debe085fbf6"},{"author":{"_account_id":1894,"name":"Ryota MIBU","email":"r-mibu@cq.jp.nec.com","username":"r-mibu"},"change_message_id":"7340382c3af8f7e6c5523c4684c52913357850b5","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"ALARM_TYPE_EVENT \u003d \u0027event\u0027"},{"line_number":24,"context_line":"EVENT_ALARM_TOPIC \u003d \u0027alarm.all\u0027"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"class EventAlarmEndpoint(object):"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_7fb6c7dd","line":24,"in_reply_to":"fa1b9901_f9fd1a6f","updated":"2015-08-18 03:18:40.000000000","message":"Done","commit_id":"0cc22e668095d9fcf18beca5bbef7debe085fbf6"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"e6657cd3f0c5c3ca4577a2d82ec65b4ff632d5cc","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def start(self):"},{"line_number":40,"context_line":"        super(EventAlarmEvaluationService, self).start()"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"        evaluator \u003d self.evaluators[ALARM_TYPE_EVENT].obj"},{"line_number":43,"context_line":"        self.listener \u003d messaging.get_notification_listener("},{"line_number":44,"context_line":"            messaging.get_transport(),"},{"line_number":45,"context_line":"            oslo_messaging.Target(topic\u003dEVENT_ALARM_TOPIC),"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_d96a961a","line":42,"updated":"2015-08-17 21:44:49.000000000","message":"maybe it\u0027s better to have to use another namespace rather than load all the evaluators.","commit_id":"0cc22e668095d9fcf18beca5bbef7debe085fbf6"},{"author":{"_account_id":1894,"name":"Ryota MIBU","email":"r-mibu@cq.jp.nec.com","username":"r-mibu"},"change_message_id":"7340382c3af8f7e6c5523c4684c52913357850b5","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def start(self):"},{"line_number":40,"context_line":"        super(EventAlarmEvaluationService, self).start()"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"        evaluator \u003d self.evaluators[ALARM_TYPE_EVENT].obj"},{"line_number":43,"context_line":"        self.listener \u003d messaging.get_notification_listener("},{"line_number":44,"context_line":"            messaging.get_transport(),"},{"line_number":45,"context_line":"            oslo_messaging.Target(topic\u003dEVENT_ALARM_TOPIC),"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_7f4a4785","line":42,"in_reply_to":"fa1b9901_d96a961a","updated":"2015-08-18 03:18:40.000000000","message":"Done","commit_id":"0cc22e668095d9fcf18beca5bbef7debe085fbf6"},{"author":{"_account_id":9562,"name":"Ildiko Vancsa","email":"ildiko.vancsa@gmail.com","username":"ildikov"},"change_message_id":"78b4ccce654ca18a7431db8a7dbdcf3483b68783","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    def stop(self):"},{"line_number":53,"context_line":"        self.listener.stop()"},{"line_number":54,"context_line":"        self.listener.wait()"},{"line_number":55,"context_line":"        super(EventAlarmEvaluationService, self).stop()"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # NOTE(r-mibu): This method won\u0027t be used, but we have to define here in"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_3d8fb076","line":54,"updated":"2015-08-16 10:33:23.000000000","message":"Why is .wait() needed here too?","commit_id":"0cc22e668095d9fcf18beca5bbef7debe085fbf6"},{"author":{"_account_id":1894,"name":"Ryota MIBU","email":"r-mibu@cq.jp.nec.com","username":"r-mibu"},"change_message_id":"ee44974682d9f75ad89360331769239b399b554c","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    def stop(self):"},{"line_number":53,"context_line":"        self.listener.stop()"},{"line_number":54,"context_line":"        self.listener.wait()"},{"line_number":55,"context_line":"        super(EventAlarmEvaluationService, self).stop()"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # NOTE(r-mibu): This method won\u0027t be used, but we have to define here in"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_a43c6b30","line":54,"in_reply_to":"1a4dcd0f_3d8fb076","updated":"2015-08-17 13:44:45.000000000","message":"This is for graceful shutdown. Please see the description of \u0027wait()\u0027 in [1].\n\n[1] http://docs.openstack.org/developer/oslo.messaging/notification_listener.html","commit_id":"0cc22e668095d9fcf18beca5bbef7debe085fbf6"},{"author":{"_account_id":9562,"name":"Ildiko Vancsa","email":"ildiko.vancsa@gmail.com","username":"ildikov"},"change_message_id":"222c71535bd4439165589b6374db43139b9b7eb7","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    def stop(self):"},{"line_number":53,"context_line":"        self.listener.stop()"},{"line_number":54,"context_line":"        self.listener.wait()"},{"line_number":55,"context_line":"        super(EventAlarmEvaluationService, self).stop()"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # NOTE(r-mibu): This method won\u0027t be used, but we have to define here in"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_eb49a4d1","line":54,"in_reply_to":"fa1b9901_a43c6b30","updated":"2015-08-18 10:30:06.000000000","message":"Got it, thanks for clarification.","commit_id":"0cc22e668095d9fcf18beca5bbef7debe085fbf6"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"b9fc07d00f2287e4d386291014e9ec183190b4ec","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    EVENT_EVALUATOR_NAMESPACE \u003d \u0027aodh.evaluator\u0027"},{"line_number":46,"context_line":"    EVENT_EVALUATOR_NAME \u003d \u0027event\u0027"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def _load_evaluators(self):"},{"line_number":49,"context_line":"        self.event_evaluator \u003d driver.DriverManager("},{"line_number":50,"context_line":"            namespace\u003dself.EVENT_EVALUATOR_NAMESPACE,"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa1b9901_56638c41","line":47,"updated":"2015-08-24 13:30:26.000000000","message":"You shouldn\u0027t inherit from evaluator.AlarmService, the only thing you need from the base class is: self.storage_conn \u003d storage.get_connection_from_config(self.conf)\n\nAll the stevedore stuffs is useless because nothing is configurable. \n\nThis should be sufficient :\n\n    self.evaluator \u003d aodh.evaluator.event.EventEvaluator(self.conf, rpc.RPCAlarmNotifier(self.conf))","commit_id":"44e5774fe393146853b12a7dfda187b602b2d71d"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"d82988fe9ba6079ac69d8f2a7f932e827a6eccfa","unresolved":false,"context_lines":[{"line_number":51,"context_line":"            rpc.RPCAlarmNotifier(self.conf))"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    @property"},{"line_number":54,"context_line":"    def _storage_conn(self):"},{"line_number":55,"context_line":"        if not self.storage_conn:"},{"line_number":56,"context_line":"            self.storage_conn \u003d storage.get_connection_from_config(self.conf)"},{"line_number":57,"context_line":"        return self.storage_conn"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa1b9901_f0cf3ab1","line":54,"updated":"2015-08-24 16:52:40.000000000","message":"Don\u0027t need to be a property, that can be moved in __init__","commit_id":"f323511b0d3556b4f2c37aeac53028e2fad78688"},{"author":{"_account_id":1894,"name":"Ryota MIBU","email":"r-mibu@cq.jp.nec.com","username":"r-mibu"},"change_message_id":"478c7a310e85dc84b4ba15793790c39c77f260ef","unresolved":false,"context_lines":[{"line_number":51,"context_line":"            rpc.RPCAlarmNotifier(self.conf))"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    @property"},{"line_number":54,"context_line":"    def _storage_conn(self):"},{"line_number":55,"context_line":"        if not self.storage_conn:"},{"line_number":56,"context_line":"            self.storage_conn \u003d storage.get_connection_from_config(self.conf)"},{"line_number":57,"context_line":"        return self.storage_conn"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa1b9901_b9d0cdca","line":54,"in_reply_to":"fa1b9901_f0cf3ab1","updated":"2015-08-24 17:53:36.000000000","message":"ok, will do","commit_id":"f323511b0d3556b4f2c37aeac53028e2fad78688"}]}
