Skip to content

Commit

Permalink
Revert "Fix for issue 716"
Browse files Browse the repository at this point in the history
This reverts commit e6b5a77.
  • Loading branch information
mbj4668 committed May 19, 2021
1 parent e6b5a77 commit 3bf81e9
Show file tree
Hide file tree
Showing 3 changed files with 59 additions and 52 deletions.
35 changes: 21 additions & 14 deletions pyang/plugins/sid.py
Expand Up @@ -590,27 +590,27 @@ def collect_module_items(self, module):
elif self.has_yang_data_extension(substmt):
self.collect_in_substmts(substmt.substmts)

def collect_inner_data_nodes(self, statements, prefix=""):
def collect_inner_data_nodes(self, statements, prefix="", prefix_module=None):
for statement in statements:
if statement.keyword in self.leaf_keywords:
self.merge_item('data', self.get_path(statement, prefix))
self.merge_item('data', self.get_path(statement, prefix, prefix_module))

elif statement.keyword in self.container_keywords:
self.merge_item('data', self.get_path(statement, prefix))
self.collect_inner_data_nodes(statement.i_children, prefix)
self.merge_item('data', self.get_path(statement, prefix, prefix_module))
self.collect_inner_data_nodes(statement.i_children, prefix, prefix_module)

elif statement.keyword == 'action':
self.merge_item('data', self.get_path(statement, prefix))
self.merge_item('data', self.get_path(statement, prefix, prefix_module))
for substmt in statement.i_children:
if substmt.keyword in self.inrpc_keywords:
self.collect_inner_data_nodes(substmt.i_children, prefix)
self.collect_inner_data_nodes(substmt.i_children, prefix, prefix_module)

elif statement.keyword == 'notification':
self.merge_item('data', self.get_path(statement, prefix))
self.collect_inner_data_nodes(statement.i_children, prefix)
self.merge_item('data', self.get_path(statement, prefix, prefix_module))
self.collect_inner_data_nodes(statement.i_children, prefix, prefix_module)

elif statement.keyword in self.choice_keywords:
self.collect_inner_data_nodes(statement.i_children, prefix)
self.collect_inner_data_nodes(statement.i_children, prefix, prefix_module)

def collect_in_substmts(self, substmts):
for statement in substmts:
Expand All @@ -626,9 +626,13 @@ def collect_in_substmts(self, substmts):

elif statement.keyword == 'uses':
prefix = self.get_path(statement.parent)
self.collect_inner_data_nodes(statement.i_grouping.i_children, prefix)
if prefix == "":
prefix_module = None
else:
prefix_module = statement.parent.i_orig_module
self.collect_inner_data_nodes(statement.i_grouping.i_children, prefix, prefix_module)

def get_path(self, statement, prefix=""):
def get_path(self, statement, prefix="", prefix_module=None):
path = ""

while statement.i_module is not None:
Expand All @@ -641,11 +645,14 @@ def get_path(self, statement, prefix=""):
break
parent = parent.parent

if (prefix != "" or
(parent.i_module is not None and parent.i_module == statement.i_module)):
if ((parent.i_orig_module is not None and
parent.i_orig_module == statement.i_orig_module) or
(parent.i_orig_module is None and
prefix_module is not None and
prefix_module == statement.i_orig_module)):
path = "/" + statement.arg + path
else:
path = "/" + statement.i_module.arg + ":" + statement.arg + path
path = "/" + statement.i_orig_module.arg + ":" + statement.arg + path

statement = statement.parent

Expand Down
52 changes: 26 additions & 26 deletions test/test_sid/test-20-expected-ieee802-dot1q-psfp@2020-07-07.sid
Expand Up @@ -25,12 +25,12 @@
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-base-time/nanoseconds",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-base-time/ieee802-dot1q-types:nanoseconds",
"sid": 60003
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-base-time/seconds",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-base-time/ieee802-dot1q-types:seconds",
"sid": 60004
},
{
Expand All @@ -40,37 +40,37 @@
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/gate-control-entry",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/ieee802-dot1q-types:gate-control-entry",
"sid": 60006
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/gate-control-entry/gate-state-value",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/ieee802-dot1q-types:gate-control-entry/ieee802-dot1q-psfp:gate-state-value",
"sid": 60007
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/gate-control-entry/index",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/ieee802-dot1q-types:gate-control-entry/ieee802-dot1q-psfp:interval-octet-max",
"sid": 60008
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/gate-control-entry/interval-octet-max",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/ieee802-dot1q-types:gate-control-entry/ieee802-dot1q-psfp:ipv-spec",
"sid": 60009
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/gate-control-entry/ipv-spec",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/ieee802-dot1q-types:gate-control-entry/index",
"sid": 60010
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/gate-control-entry/operation-name",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/ieee802-dot1q-types:gate-control-entry/operation-name",
"sid": 60011
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/gate-control-entry/time-interval-value",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-control-list/ieee802-dot1q-types:gate-control-entry/time-interval-value",
"sid": 60012
},
{
Expand All @@ -85,12 +85,12 @@
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-cycle-time/denominator",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-cycle-time/ieee802-dot1q-types:denominator",
"sid": 60015
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-cycle-time/numerator",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:admin-cycle-time/ieee802-dot1q-types:numerator",
"sid": 60016
},
{
Expand All @@ -110,12 +110,12 @@
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:config-change-time/nanoseconds",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:config-change-time/ieee802-dot1q-types:nanoseconds",
"sid": 60020
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:config-change-time/seconds",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:config-change-time/ieee802-dot1q-types:seconds",
"sid": 60021
},
{
Expand All @@ -130,12 +130,12 @@
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:current-time/nanoseconds",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:current-time/ieee802-dot1q-types:nanoseconds",
"sid": 60024
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:current-time/seconds",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:current-time/ieee802-dot1q-types:seconds",
"sid": 60025
},
{
Expand Down Expand Up @@ -165,12 +165,12 @@
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-base-time/nanoseconds",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-base-time/ieee802-dot1q-types:nanoseconds",
"sid": 60031
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-base-time/seconds",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-base-time/ieee802-dot1q-types:seconds",
"sid": 60032
},
{
Expand All @@ -180,37 +180,37 @@
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/gate-control-entry",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/ieee802-dot1q-types:gate-control-entry",
"sid": 60034
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/gate-control-entry/gate-state-value",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/ieee802-dot1q-types:gate-control-entry/ieee802-dot1q-psfp:gate-state-value",
"sid": 60035
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/gate-control-entry/index",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/ieee802-dot1q-types:gate-control-entry/ieee802-dot1q-psfp:interval-octet-max",
"sid": 60036
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/gate-control-entry/interval-octet-max",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/ieee802-dot1q-types:gate-control-entry/ieee802-dot1q-psfp:ipv-spec",
"sid": 60037
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/gate-control-entry/ipv-spec",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/ieee802-dot1q-types:gate-control-entry/index",
"sid": 60038
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/gate-control-entry/operation-name",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/ieee802-dot1q-types:gate-control-entry/operation-name",
"sid": 60039
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/gate-control-entry/time-interval-value",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-control-list/ieee802-dot1q-types:gate-control-entry/time-interval-value",
"sid": 60040
},
{
Expand All @@ -225,12 +225,12 @@
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-cycle-time/denominator",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-cycle-time/ieee802-dot1q-types:denominator",
"sid": 60043
},
{
"namespace": "data",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-cycle-time/numerator",
"identifier": "/ieee802-dot1q-bridge:bridges/bridge/component/ieee802-dot1q-stream-filters-gates:stream-gates/stream-gate-instance-table/ieee802-dot1q-psfp:oper-cycle-time/ieee802-dot1q-types:numerator",
"sid": 60044
},
{
Expand Down
Expand Up @@ -15,62 +15,62 @@
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher",
"identifier": "/ietf-voucher:voucher",
"sid": 2501
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher/assertion",
"identifier": "/ietf-voucher:voucher/assertion",
"sid": 2502
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher/created-on",
"identifier": "/ietf-voucher:voucher/created-on",
"sid": 2503
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher/domain-cert-revocation-checks",
"identifier": "/ietf-voucher:voucher/domain-cert-revocation-checks",
"sid": 2504
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher/expires-on",
"identifier": "/ietf-voucher:voucher/expires-on",
"sid": 2505
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher/idevid-issuer",
"identifier": "/ietf-voucher:voucher/idevid-issuer",
"sid": 2506
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher/last-renewal-date",
"identifier": "/ietf-voucher:voucher/ietf-constrained-voucher:pinned-domain-subject-public-key-info",
"sid": 2507
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher/nonce",
"identifier": "/ietf-voucher:voucher/ietf-constrained-voucher:pinned-sha256-of-subject-public-key-info",
"sid": 2508
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher/pinned-domain-cert",
"identifier": "/ietf-voucher:voucher/last-renewal-date",
"sid": 2509
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher/pinned-domain-subject-public-key-info",
"identifier": "/ietf-voucher:voucher/nonce",
"sid": 2510
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher/pinned-sha256-of-subject-public-key-info",
"identifier": "/ietf-voucher:voucher/pinned-domain-cert",
"sid": 2511
},
{
"namespace": "data",
"identifier": "/ietf-constrained-voucher:voucher/serial-number",
"identifier": "/ietf-voucher:voucher/serial-number",
"sid": 2512
}
]
Expand Down

0 comments on commit 3bf81e9

Please sign in to comment.