aboutsummaryrefslogtreecommitdiffstats
path: root/src/resources/devtools/unpack_ooxml.sh
diff options
context:
space:
mode:
authorDustin Spicuzza <virtuald@apache.org>2015-10-19 05:52:35 +0000
committerDustin Spicuzza <virtuald@apache.org>2015-10-19 05:52:35 +0000
commit8a41cf7c40c05f39377e755f05dc8ce19def9f07 (patch)
tree837b63ee271bca55a95b48d780d73038e625f400 /src/resources/devtools/unpack_ooxml.sh
parent2afe97762259bd86d8209b77155beda8235e3e85 (diff)
downloadpoi-8a41cf7c40c05f39377e755f05dc8ce19def9f07.tar.gz
poi-8a41cf7c40c05f39377e755f05dc8ce19def9f07.zip
Import poi-visio codebase
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1709354 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/resources/devtools/unpack_ooxml.sh')
-rwxr-xr-xsrc/resources/devtools/unpack_ooxml.sh45
1 files changed, 45 insertions, 0 deletions
diff --git a/src/resources/devtools/unpack_ooxml.sh b/src/resources/devtools/unpack_ooxml.sh
new file mode 100755
index 0000000000..a4b8703a84
--- /dev/null
+++ b/src/resources/devtools/unpack_ooxml.sh
@@ -0,0 +1,45 @@
+#!/bin/bash -e
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+# basename it
+
+FILENAME="$1"
+BASENAME="${FILENAME##*/}"
+OUTDIR="${BASENAME%.*}"
+
+if [ ! -f "$FILENAME" ]; then
+ echo "File $FILENAME does not exist"
+ exit 1
+fi
+
+# if dir exists, fail
+if [ -d "$OUTDIR" ]; then
+ echo "Directory '$OUTDIR' already exists!"
+ exit 1
+fi
+
+mkdir "$OUTDIR"
+unzip -d "$OUTDIR" "$FILENAME"
+
+pushd "$OUTDIR"
+
+find . -type f \( -iname "*.xml" -or -iname "*.rels" \) -exec python -c "import os, sys, xml.dom.minidom
+with open('{}', 'r') as fp:
+ s = fp.read()
+with open('{}.bak', 'w') as fp:
+ fp.write(xml.dom.minidom.parseString(s).toprettyxml().encode('utf-8'))
+os.rename('{}.bak', '{}')" \;