summaryrefslogtreecommitdiffstats
path: root/grToolkit/model/scripts/python/yang2props.py
diff options
context:
space:
mode:
authorJessica Wagantall <jwagantall@linuxfoundation.org>2020-12-01 11:33:35 -0800
committerJessica Wagantall <jwagantall@linuxfoundation.org>2020-12-01 11:33:35 -0800
commit96a9aafdff7813324bc8a8ba1e743683e251dde6 (patch)
tree644c6837ab58ed21fb05f4bf988dc392875b9f8d /grToolkit/model/scripts/python/yang2props.py
parenta0e97e71a49a8b54fddf8fb004b32f202f114011 (diff)
Migrate files from sli-plugins
Migrate sli-plugins repo into new directory "plugins". Signed-off-by: Jessica Wagantall <jwagantall@linuxfoundation.org>
Diffstat (limited to 'grToolkit/model/scripts/python/yang2props.py')
-rwxr-xr-xgrToolkit/model/scripts/python/yang2props.py78
1 files changed, 0 insertions, 78 deletions
diff --git a/grToolkit/model/scripts/python/yang2props.py b/grToolkit/model/scripts/python/yang2props.py
deleted file mode 100755
index 85daccfbd..000000000
--- a/grToolkit/model/scripts/python/yang2props.py
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/usr/bin/python
-
-###
-# ============LICENSE_START=======================================================
-# openECOMP : SDN-C
-# ================================================================================
-# Copyright (C) 2018 AT&T Intellectual Property. All rights
-# reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ============LICENSE_END=========================================================
-###
-
-import re
-import sys
-
-
-# Convert word from foo-bar to FooBar
-# words begining with a digit will be converted to _digit
-def to_enum(s):
- if s[0].isdigit():
- s = "_" + s
- else:
- s = s[0].upper() + s[1:]
- return re.sub(r'(?!^)-([a-zA-Z])', lambda m: m.group(1).upper(), s)
-
-leaf = ""
-val = ""
-li = []
-
-if len(sys.argv) < 3:
- print 'yang2props.py <input yang> <output properties>'
- sys.exit(2)
-
-with open(sys.argv[1], "r") as ins:
- for line in ins:
- # if we see a leaf save the name for later
- if "leaf " in line:
- match = re.search(r'leaf (\S+)', line)
- if match:
- leaf = match.group(1)
-
- # if we see enum convert the value to enum format and see if it changed
- # if the value is different write a property entry
- if "enum " in line:
- match = re.search(r'enum "(\S+)";', line)
- if match:
- val = match.group(1)
- enum = to_enum(val)
-
- # see if converting to enum changed the string
- if val != enum:
- property = "yang."+leaf+"."+enum+"="+val
- if property not in li:
- li.append( property)
-
-
-# Open output file
-fo = open(sys.argv[2], "wb")
-fo.write("# yang conversion properties \n")
-fo.write("# used to convert Enum back to the original yang value \n")
-fo.write("\n".join(li))
-fo.write("\n")
-
-# Close opend file
-fo.close()
-
-