Changes for page EOModelDoc
Last modified by Theodore Petrosky on 2012/02/11 13:36
From version 20.1
edited by Chuck Hill
on 2008/07/31 17:53
on 2008/07/31 17:53
Change comment:
There is no comment for this version
To version 26.1
edited by Chuck Hill
on 2008/08/01 14:38
on 2008/08/01 14:38
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,3 +1,13 @@ 1 +== Contents == 2 + 3 +[[||anchor="Overview"]] 4 +[[||anchor="Future Plans"]] 5 +[[||anchor="Download and Example Output"]] 6 +[[||anchor="Usage"]] 7 +[[||anchor="Running from Ant"]] 8 +[[||anchor="Template Files"]] 9 +[[||anchor="Alternate Templates"]] 10 + 1 1 == Overview == 2 2 3 3 EOModelDoc is a command line tool to generate HTML documentation of a set of EOModels. It is a replacement for [[EOReporter>>http://www.rubicode.com/Software/EOReporter/]] (which will not work on Leopard and newer releases of OS X). EOModelDoc was funded by the Apple iTunes Store and released to the community. ... ... @@ -19,7 +19,7 @@ 19 19 20 20 The command line syntax of for EOModelDoc: 21 21 22 -##java --jar eomodeldoc.jar --output /path/to/output/folder -model /path/to/model.eomodeld]** -modelgroup /path/to/working/dir] -templates /path/to/templates] -entityURLTemplate "http:~/~/ whatever?$entity.classNamePath}.html**##32 +##java --jar eomodeldoc.jar --output /path/to/output/folder -model /path/to/model.eomodeld]** -modelgroup /path/to/working/dir] -templates /path/to/templates] -entityURLTemplate "http:~/~/domain/path/to/JavaDocs/$entity.classNamePath.html**## 23 23 24 24 |=Parameter|=Usage / Function 25 25 |output|Path to the directory where the output HTML files will be written. ... ... @@ -28,6 +28,13 @@ 28 28 |templates|Path to the directory where the Velocity templates are stored. See the [[||anchor="Template Files"]] section below for details on these templates. If this is not specified, the default templates inside the eomodeldoc.jar file will be used. 29 29 |entityURLTemplate|URL to the JavaDocs for the classes in the model. This is used to create links from the EOModel documentation to the JavaDoc documentation. The dots in the classpath are replaced with "/" when the path is generated. 30 30 41 +=== Notes === 42 + 43 +* Only ##-output## is required 44 +* Usually only one of ##-modelGroup## or ##-model## is used (i.e. not both at the same time) 45 +* The ##-templates## path only needs to point the the templates that you have changed. If any templates are not found on that path, the defaults from the jar are used. 46 +* For ##-entityURLTemplate## the ##http:~/~/domain/path/to/JavaDocs/## the path to the index.html file that JavaDoc generates. It will be something like ##http:~/~/developer.apple.com/documentation/MacOSXServer/Reference/WO54_Reference/##. If the EOModelDocs and JavaDocs are on the same server, you can use absolute or relative paths instead of a full URL:##http:~/~/developer.apple.com/documentation/MacOSXServer/Reference/WO54_Reference/## 47 + 31 31 === Usage Examples === 32 32 33 33 Document one model: ... ... @@ -34,7 +34,7 @@ 34 34 35 35 {{code}} 36 36 37 -java -jar eomodeldoc.jar -model /path/to/model.eomodeld -output /tmp/eomodeldoc 54 +java -jar /path/to/eomodeldoc.jar -model /path/to/model.eomodeld -output /tmp/eomodeldoc 38 38 39 39 {{/code}} 40 40 ... ... @@ -43,7 +43,7 @@ 43 43 44 44 {{code}} 45 45 46 -java -jar eomodeldoc.jar -modelgroup /path/to/project -output /tmp/eomodeldoc 63 +java -jar /path/to/eomodeldoc.jar -modelgroup /path/to/project -output /tmp/eomodeldoc 47 47 48 48 {{/code}} 49 49 ... ... @@ -51,10 +51,69 @@ 51 51 52 52 {{code}} 53 53 54 -java -jar eomodeldoc.jar -output /tmp/eomodeldoc 71 +java -jar /path/to/eomodeldoc.jar -output /tmp/eomodeldoc 55 55 56 56 {{/code}} 57 57 75 +== Running from Ant == 76 + 77 +**Note**: do not put this jar on your classpath! Chaos and Other Bad Things may ensue. 78 + 79 +There is no Ant task (yet) for EOModelDoc. You can run it with an ##java## task following this pattern: 80 + 81 +{{code value="xml"}} 82 + 83 +<java jar="/path/to/eomodeldoc.jar" 84 + fork="true" 85 + maxmemory="256m"> 86 + <arg value="-output" /> 87 + <arg value="/path/to/output/folder" /> 88 + <arg value="-modelgroup" /> 89 + <arg value="/path/to/working/dir" /> 90 + <arg value="-templates" /> 91 + <arg value="/path/to/templates" /> 92 + <arg value="-entityURLTemplate" /> 93 + <arg value="http://whatever?$${entity.classNamePath}.html" /> 94 +</java> 95 + 96 +{{/code}} 97 + 98 +{{code value="xml"}} 99 + 100 +<java jar="/path/to/eomodeldoc.jar" 101 + fork="true" 102 + maxmemory="256m"> 103 + <arg value="-output" /> 104 + <arg value="/path/to/output/folder" /> 105 + <arg value="-model" /> 106 + <arg value="/path/to/modelA.eomodeld" /> 107 + <arg value="-model" /> 108 + <arg value="/path/to/modelB.eomodeld" /> 109 + <arg value="-model" /> 110 + <arg value="/path/to/modelC.eomodeld" /> 111 + <arg value="-templates" /> 112 + <arg value="/path/to/templates" /> 113 + <arg value="-entityURLTemplate" /> 114 + <arg value="http://whatever?$${entity.classNamePath}.html" /> 115 +</java> 116 + 117 +{{/code}} 118 + 119 +If you include this in the build.xml file in the project, it can be as simple as: 120 + 121 +{{code value="xml"}} 122 + 123 +<java jar="/path/to/eomodeldoc.jar" 124 + fork="true" 125 + maxmemory="256m"> 126 + <arg value="-output" /> 127 + <arg value="Documentation" /> 128 + <arg value="-modelgroup" /> 129 + <arg value="." /> 130 +</java> 131 + 132 +{{/code}} 133 + 58 58 == Template Files == 59 59 60 60 Default templates are included in the eomodeldoc.jar file. You can extract these templates to use as a basis for your own templates with this command: ... ... @@ -65,7 +65,7 @@ 65 65 66 66 {{/code}} 67 67 68 -Onl yneed to have the templates that are different from the jar?144 +See the [[EOGenerator template documentation>>EOGenerator Templates and Additions]] documentation for information on customizing these templates. The ##-templates## path only needs to point the the templates that you have changed. If any templates are not found on that path, the defaults from the jar are used. 69 69 70 70 The templates and their function are: 71 71 ... ... @@ -82,4 +82,38 @@ 82 82 |eomodeldoc.css.vm|CSS file that controls what the generate output looks like. 83 83 |eomodeldoc.js.vm|JavaScript file that cleans up the display. You probably won't need to modify this. 84 84 85 -== Running from Ant == 161 +Some pictures will illustrate this: 162 + 163 +---- 164 + 165 +[[image:EOModelDocTemplates1.png||width="800"]] 166 + 167 +---- 168 + 169 +[[image:EOModelDocTemplates2.png||width="800"]] 170 + 171 +---- 172 + 173 +[[image:EOModelDocTemplates3.png||width="800"]] 174 + 175 + 176 +---- 177 + 178 +== Alternate Templates == 179 + 180 +Have some interesting templates to share? Add them as attachements and link them here. 181 + 182 +=== Template Mark I from Chuck === 183 + 184 +[[Download>>^ChuckHillTemplates.tgz]] 185 + 186 +This is the default template with some useful (to me) changes: 187 + 188 +* individual properties can be toggled open and closed 189 +* non-class hidden by default 190 +* less blank vertical space 191 +* column name moved into details 192 + 193 +---- 194 + 195 +[[image:ChuckHillTemplate.png]]