diff options
author | Sunil Shetye | 2024-12-13 11:54:33 +0530 |
---|---|---|
committer | Sunil Shetye | 2024-12-13 11:54:33 +0530 |
commit | ab1bb11980bf0c20c7fbc4dcde112a173961e978 (patch) | |
tree | c83a881cd9af863941f7e9d65f820cb0c2dd5dd8 | |
parent | edb1d1bab08d33d272141fc400f075617095d4a9 (diff) | |
download | Common-Interface-Project-ab1bb11980bf0c20c7fbc4dcde112a173961e978.tar.gz Common-Interface-Project-ab1bb11980bf0c20c7fbc4dcde112a173961e978.tar.bz2 Common-Interface-Project-ab1bb11980bf0c20c7fbc4dcde112a173961e978.zip |
call XmlParser.py in a loop
-rwxr-xr-x | blocks/xcos2xml/replacesplitblocks.sh | 86 |
1 files changed, 56 insertions, 30 deletions
diff --git a/blocks/xcos2xml/replacesplitblocks.sh b/blocks/xcos2xml/replacesplitblocks.sh index aad98f42..dfb4be89 100755 --- a/blocks/xcos2xml/replacesplitblocks.sh +++ b/blocks/xcos2xml/replacesplitblocks.sh @@ -62,50 +62,76 @@ fi set -e -TMPFILE1="$( mktemp -t XXXXXX.xml )" -TMPFILE2="$( mktemp -t XXXXXX.xml )" -trap "cat $TMPFILE2; rm -f $TMPFILE1 $TMPFILE2" 0 1 2 15 +TMPFILE1="$(mktemp -t XXXXXX.xml)" +TMPFILE2="$(mktemp -t XXXXXX.xml)" +trap "rm -f $TMPFILE1 $TMPFILE2" 0 1 2 15 if test -n "$INPUTXML"; then - xmllint --format "$INPUTXML" > "$TMPFILE2" - if ! diff -q "$TMPFILE2" "$INPUTXML" >&2; then - cp -f "$TMPFILE2" "$INPUTXML" - echo "$INPUTXML updated" >&2 - fi - - # MxGraphParser creates $INPUT - echo "Running Xcos/MxGraphParser.py $INPUTXML" >&2 - Xcos/MxGraphParser.py "$INPUTXML" >&2 + xmllint --format "$INPUTXML" >"$TMPFILE2" + if ! diff -q "$TMPFILE2" "$INPUTXML" >&2; then + cp -f "$TMPFILE2" "$INPUTXML" + echo "$INPUTXML updated" >&2 + fi + + # MxGraphParser creates $INPUT + echo "Running Xcos/MxGraphParser.py $INPUTXML" >&2 + Xcos/MxGraphParser.py "$INPUTXML" >&2 fi -count=$( grep -c '^ <SplitBlock' "$INPUT" ) || : +count=$(grep -c '^ <SplitBlock' "$INPUT") || : INPUT1="$BASE-$count.xml" echo "Creating $INPUT1" >&2 cp -f "$INPUT" "$INPUT1" while test $count -gt 0; do - oldcount=$count - - xsltproc "$SPLITXSL" "$INPUT1" > "$TMPFILE1" - xmllint --format "$TMPFILE1" > "$TMPFILE2" - count=$( grep -c '^ <SplitBlock' "$TMPFILE2" ) || : - INPUT1="$BASE-$count.xml" - echo "Creating $INPUT1" >&2 - cp -f "$TMPFILE2" "$INPUT1" - - if (( count != oldcount - 1 )); then - echo "ERROR: $count != $oldcount - 1" >&2 - exit 2 - fi + oldcount=$count + + xsltproc "$SPLITXSL" "$INPUT1" >"$TMPFILE1" + xmllint --format "$TMPFILE1" >"$TMPFILE2" + count=$(grep -c '^ <SplitBlock' "$TMPFILE2") || : + INPUT1="$BASE-$count.xml" + echo "Creating $INPUT1" >&2 + cp -f "$TMPFILE2" "$INPUT1" + + if ((count != oldcount - 1)); then + echo "ERROR: $count != $oldcount - 1" >&2 + exit 2 + fi done -xsltproc "$XSL" "$INPUT1" > "$TMPFILE1" -xmllint --format "$TMPFILE1" > "$TMPFILE2" -INPUT1="$BASE-old.xml" +xsltproc "$XSL" "$INPUT1" >"$TMPFILE1" +xmllint --format "$TMPFILE1" >"$TMPFILE2" +INPUT1="$BASE-xcos2xml.xml" cp -f "$TMPFILE2" "$INPUT1" xsltproc "$GEOMETRYXSL" "$INPUT1" >"$TMPFILE1" xmllint --format "$TMPFILE1" >"$TMPFILE2" -cp -f "$TMPFILE2" "$TMPFILE1" +INPUT1="$BASE-geometry.xml" +cp -f "$TMPFILE2" "$INPUT1" + +echo "Running Xcos/XmlParser.py $INPUT1" >&2 +Xcos/XmlParser.py "$INPUT1" >&2 && rv=$? || rv=$? + +while test $rv -gt 0; do + oldrv=$rv + + INPUT1="$BASE-geometry.$rv.xml" + xmllint --format "$INPUT1" >"$TMPFILE2" + cp -f "$TMPFILE2" "$INPUT1" + echo "Running Xcos/XmlParser.py $INPUT1" >&2 + Xcos/XmlParser.py "$INPUT1" >&2 && rv=$? || rv=$? + + if ((rv >= oldrv)); then + echo "ERROR: $rv >= $oldrv" >&2 + exit 2 + fi +done + +INPUT1="$BASE-geometry.$rv.xml" +xmllint --format "$INPUT1" >"$TMPFILE2" +cp -f "$TMPFILE2" "$INPUT1" + +echo "Running Xcos/MxGraphParser.py $INPUT1" >&2 +Xcos/MxGraphParser.py "$INPUT1" >&2 exit 0 |