root/Xml/xsd-fu/trunk/gen.sh
| Revision 217, 2.3 KB (checked in by ctrueden, 23 months ago) | |
|---|---|
|
|
| Line | |
|---|---|
| 1 | #!/bin/bash |
| 2 | |
| 3 | # gen.sh - A script for generating the OME-XML Java library source code. |
| 4 | # See http://www.loci.wisc.edu/ome/ome-xml-java.html for more information. |
| 5 | |
| 6 | export PYTHONPATH=Genshi-0.5dev_r765-py2.4-macosx-10.4-fat.egg |
| 7 | |
| 8 | legacy_ome_path=~/svn/ome/src/xml/schemas/ome.xsd |
| 9 | modern_schemas="2007-06 2008-02 2008-09" |
| 10 | out_path=~/svn/java/components/ome-xml/src |
| 11 | |
| 12 | echo Generating OME 2003-FC source in ome/xml/r2003fc/ome |
| 13 | mkdir -p $out_path/ome/xml/r2003fc/ome |
| 14 | ./xsd-fu -n xs: -p ome.xml.r2003fc.ome \ |
| 15 | -o $out_path/ome/xml/r2003fc/ome $legacy_ome_path |
| 16 | |
| 17 | # HACK - fix 2003fc source code compile errors |
| 18 | sed -i \ |
| 19 | -e 's/public AuxLightSourceNode getAuxLightSource()/public LightSourceNode getAuxLightSource()/' \ |
| 20 | -e 's/return (AuxLightSourceNode)/return (LightSourceNode)/' \ |
| 21 | -e 's/getReferencedNode("AuxLightSource"/getReferencedNode("LightSource"/' \ |
| 22 | -e 's/getChildNode("AuxLightSourceRef"/getChildNode("LightSourceRef"/' \ |
| 23 | $out_path/ome/xml/r2003fc/ome/ChannelInfoNode.java |
| 24 | for f in $out_path/ome/xml/r2003fc/ome/*.java |
| 25 | do |
| 26 | sed -i -e '/import ome.xml.r2003fc.spw/d' $f |
| 27 | done |
| 28 | sed -i -e 's/BinDataNode/OMEXMLNode/g' \ |
| 29 | $out_path/ome/xml/r2003fc/ome/PixelsNode.java |
| 30 | |
| 31 | # generate OME classes |
| 32 | for version in $modern_schemas |
| 33 | do |
| 34 | package=`echo $version | sed -e 's/^/r/' -e 's/\-//'` |
| 35 | echo Generating OME $version source in ome/xml/$package/ome |
| 36 | mkdir -p $out_path/ome/xml/$package/ome |
| 37 | ./xsd-fu -p ome.xml.$package.ome \ |
| 38 | -o $out_path/ome/xml/$package/ome ../../../Schemas/OME/$version/ome.xsd |
| 39 | |
| 40 | # HACK - fix OME source code compile errors |
| 41 | sed -i -e 's/BinDataNode/OMEXMLNode/g' \ |
| 42 | $out_path/ome/xml/$package/ome/PixelsNode.java |
| 43 | done |
| 44 | |
| 45 | # generate SPW classes |
| 46 | mv templates/Class.template templates/OME.template |
| 47 | mv templates/SPW.template templates/Class.template |
| 48 | for version in $modern_schemas |
| 49 | do |
| 50 | package=`echo $version | sed -e 's/^/r/' -e 's/\-//'` |
| 51 | echo Generating SPW $version source in ome/xml/$package/spw |
| 52 | mkdir -p $out_path/ome/xml/$package/spw |
| 53 | ./xsd-fu -p ome.xml.$package.spw \ |
| 54 | -o $out_path/ome/xml/$package/spw ../../../Schemas/SPW/$version/SPW.xsd |
| 55 | |
| 56 | # HACK - fix SPW source code compile errors |
| 57 | sed -i -e 's/OME://g' \ |
| 58 | $out_path/ome/xml/$package/spw/ImageRefNode.java |
| 59 | done |
| 60 | mv templates/Class.template templates/SPW.template |
| 61 | mv templates/OME.template templates/Class.template |
Note: See TracBrowser
for help on using the browser.
