<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:16:41 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[NETCONF-1104] Turn ListenersBroker into a component</title>
                <link>https://jira.opendaylight.org/browse/NETCONF-1104</link>
                <project id="10142" key="NETCONF">netconf</project>
                    <description>&lt;p&gt;ListenersBroker hosts node-local state about what notification streams have been defined. At the end of the day, it it has three distinct parts:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;dataChangeListeners, backed by DOMDataTreeChangeService&lt;/li&gt;
	&lt;li&gt;notificationListeners, backed by DOMNotificationService&lt;/li&gt;
	&lt;li&gt;deviceNotificationListeners, backed by NETCONF mounted devices&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;This is a ClassLoader singleton, accessed via static ListenersBroker.getInstance() &amp;#8211; which is completely wrong, as it should be a a normal singleton managing the contents of ietf-restconf-monitoring streams&apos; content, with the three parts managed separately as:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;SalRemoteImpl, which handles dataChangeListeners and notificationListeners&lt;/li&gt;
	&lt;li&gt;OdlDeviceNotificationImpl, which handles deviceNotificationListeners&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;This deals with the first part of the problem: getting rid of ListenersBroker.getInstance() and properly injecting the appropriate service into all components accessing ListenersBroker instances.&lt;/p&gt;

</description>
                <environment></environment>
        <key id="37149">NETCONF-1104</key>
            <summary>Turn ListenersBroker into a component</summary>
                <type id="10100" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10310&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="1" iconUrl="https://jira.opendaylight.org/images/icons/priorities/blocker.svg">Highest</priority>
                        <status id="5" iconUrl="https://jira.opendaylight.org/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10000">Done</resolution>
                                        <assignee username="ojo">Oleksandr Zharov</assignee>
                                    <reporter username="rovarga">Robert Varga</reporter>
                        <labels>
                            <label>pt</label>
                    </labels>
                <created>Mon, 31 Jul 2023 19:39:46 +0000</created>
                <updated>Thu, 5 Oct 2023 15:51:53 +0000</updated>
                            <resolved>Thu, 5 Oct 2023 15:51:53 +0000</resolved>
                                                    <fixVersion>7.0.0</fixVersion>
                                    <component>restconf-nb</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>1</watches>
                                                                                                                        <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10002" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>NETCONF-773</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i045zb:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>