From: <bh...@us...> - 2008-01-09 00:57:22
|
Revision: 593 http://cishell.svn.sourceforge.net/cishell/?rev=593&view=rev Author: bh2 Date: 2008-01-08 16:57:19 -0800 (Tue, 08 Jan 2008) Log Message: ----------- Some initial work on the cishell specification, mainly in the Introduction, Framework, and Algorithm sections. Modified Paths: -------------- trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex trunk/core/org.cishell.docs/src/specification/tex/data.tex trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex trunk/core/org.cishell.docs/src/specification/tex/framework.tex trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex trunk/core/org.cishell.docs/src/specification/tex/introduction.tex Added Paths: ----------- trunk/core/org.cishell.docs/src/img/algExecWorkflow.dia trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps trunk/core/org.cishell.docs/src/img/algExecWorkflow.pdf trunk/core/org.cishell.docs/src/img/cishellInteraction.dia trunk/core/org.cishell.docs/src/img/cishellInteraction.eps trunk/core/org.cishell.docs/src/img/cishellInteraction.pdf Added: trunk/core/org.cishell.docs/src/img/algExecWorkflow.dia =================================================================== (Binary files differ) Property changes on: trunk/core/org.cishell.docs/src/img/algExecWorkflow.dia ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps =================================================================== --- trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps (rev 0) +++ trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps 2008-01-09 00:57:19 UTC (rev 593) @@ -0,0 +1,461 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: /home/bherr/cishell-workspace/org.cishell.docs/src/img/algExecWorkflow.dia +%%Creator: Dia v0.95 +%%CreationDate: Tue Jan 8 19:30:54 2008 +%%For: bherr +%%Orientation: Portrait +%%Magnification: 1.0000 +%%BoundingBox: 0 0 1146 213 +%%BeginSetup +%%EndSetup +%%EndComments +%%BeginProlog +[ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright +/parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one +/two /three /four /five /six /seven /eight /nine /colon /semicolon +/less /equal /greater /question /at /A /B /C /D /E +/F /G /H /I /J /K /L /M /N /O +/P /Q /R /S /T /U /V /W /X /Y +/Z /bracketleft /backslash /bracketright /asciicircum /underscore /quoteleft /a /b /c +/d /e /f /g /h /i /j /k /l /m +/n /o /p /q /r /s /t /u /v /w +/x /y /z /braceleft /bar /braceright /asciitilde /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/space /exclamdown /cent /sterling /currency /yen /brokenbar /section /dieresis /copyright +/ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron /degree /plusminus /twosuperior /threesuperior +/acute /mu /paragraph /periodcentered /cedilla /onesuperior /ordmasculine /guillemotright /onequarter /onehalf +/threequarters /questiondown /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla +/Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis /Eth /Ntilde +/Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply /Oslash /Ugrave /Uacute /Ucircumflex +/Udieresis /Yacute /Thorn /germandbls /agrave /aacute /acircumflex /atilde /adieresis /aring +/ae /ccedilla /egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis +/eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide /oslash /ugrave +/uacute /ucircumflex /udieresis /yacute /thorn /ydieresis] /isolatin1encoding exch def +/cp {closepath} bind def +/c {curveto} bind def +/f {fill} bind def +/a {arc} bind def +/ef {eofill} bind def +/ex {exch} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth pop} bind def +/tr {translate} bind def + +/ellipsedict 8 dict def +ellipsedict /mtrx matrix put +/ellipse +{ ellipsedict begin + /endangle exch def + /startangle exch def + /yrad exch def + /xrad exch def + /y exch def + /x exch def /savematrix mtrx currentmatrix def + x y tr xrad yrad sc + 0 0 1 startangle endangle arc + savematrix setmatrix + end +} def + +/mergeprocs { +dup length +3 -1 roll +dup +length +dup +5 1 roll +3 -1 roll +add +array cvx +dup +3 -1 roll +0 exch +putinterval +dup +4 2 roll +putinterval +} bind def +/Times-Roman-latin1 + /Times-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-Italic-latin1 + /Times-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-Bold-latin1 + /Times-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-BoldItalic-latin1 + /Times-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-Book-latin1 + /AvantGarde-Book findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-BookOblique-latin1 + /AvantGarde-BookOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-Demi-latin1 + /AvantGarde-Demi findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-DemiOblique-latin1 + /AvantGarde-DemiOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-Light-latin1 + /Bookman-Light findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-LightItalic-latin1 + /Bookman-LightItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-Demi-latin1 + /Bookman-Demi findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-DemiItalic-latin1 + /Bookman-DemiItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-latin1 + /Courier findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-Oblique-latin1 + /Courier-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-Bold-latin1 + /Courier-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-BoldOblique-latin1 + /Courier-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-latin1 + /Helvetica findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Oblique-latin1 + /Helvetica-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Bold-latin1 + /Helvetica-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-BoldOblique-latin1 + /Helvetica-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-latin1 + /Helvetica-Narrow findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-Oblique-latin1 + /Helvetica-Narrow-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-Bold-latin1 + /Helvetica-Narrow-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-BoldOblique-latin1 + /Helvetica-Narrow-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Roman-latin1 + /NewCenturySchoolbook-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Italic-latin1 + /NewCenturySchoolbook-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Bold-latin1 + /NewCenturySchoolbook-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-BoldItalic-latin1 + /NewCenturySchoolbook-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Roman-latin1 + /Palatino-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Italic-latin1 + /Palatino-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Bold-latin1 + /Palatino-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-BoldItalic-latin1 + /Palatino-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Symbol-latin1 + /Symbol findfont +definefont pop +/ZapfChancery-MediumItalic-latin1 + /ZapfChancery-MediumItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/ZapfDingbats-latin1 + /ZapfDingbats findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +28.346000 -28.346000 scale +-3.052329 -20.889765 translate +%%EndProlog + + +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 14.958000 16.044000 m 14.958000 18.244000 l 22.508000 18.244000 l 22.508000 16.044000 l f +0.000000 0.000000 0.000000 srgb +n 14.958000 16.044000 m 14.958000 18.244000 l 22.508000 18.244000 l 22.508000 16.044000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 18.733000 ex sub 16.694000 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(AlgorithmFactory) dup sw 2 div 18.733000 ex sub 17.694000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 27.318000 16.045000 m 27.318000 18.245000 l 32.368000 18.245000 l 32.368000 16.045000 l f +0.000000 0.000000 0.000000 srgb +n 27.318000 16.045000 m 27.318000 18.245000 l 32.368000 18.245000 l 32.368000 16.045000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 29.843000 ex sub 16.695000 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(Algorithm) dup sw 2 div 29.843000 ex sub 17.695000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 27.273560 17.145000 m 23.346440 17.145000 l 23.346440 17.144000 l 22.555758 17.144000 l s +/Courier-latin1 ff 0.560000 scf sf +(Creates) 23.446440 16.994500 m gs 1 -1 sc sh gr +n 25.996440 16.994500 m 25.996440 16.594500 l 26.396440 16.794500 l ef +(1) dup sw 27.073560 ex sub 16.995000 m gs 1 -1 sc sh gr +(1) 22.755758 16.994000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 4.665347 13.448391 m 4.665347 15.648391 l 9.715347 15.648391 l 9.715347 13.448391 l f +0.000000 0.000000 0.000000 srgb +n 4.665347 13.448391 m 4.665347 15.648391 l 9.715347 15.648391 l 9.715347 13.448391 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 7.190347 ex sub 14.098391 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(Data) dup sw 2 div 7.190347 ex sub 15.098391 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 3.102329 18.639765 m 3.102329 20.839765 l 9.702329 20.839765 l 9.702329 18.639765 l f +0.000000 0.000000 0.000000 srgb +n 3.102329 18.639765 m 3.102329 20.839765 l 9.702329 20.839765 l 9.702329 18.639765 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 6.402329 ex sub 19.289765 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(CIShellContext) dup sw 2 div 6.402329 ex sub 20.289765 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slj +0 slc +n 22.626200 17.313300 m 21.531500 18.353100 l 22.625500 18.353100 l ef +n 22.626200 17.313300 m 21.531500 18.353100 l 22.625500 18.353100 l cp s +0.100000 slw +[] 0 sd +0 slj +0 slc +n 9.702329 19.739765 m 11.446440 19.739765 l 11.446440 17.144000 l 14.958000 17.144000 l s +/Courier-latin1 ff 0.560000 scf sf +(1) 9.902329 19.589765 m gs 1 -1 sc sh gr +(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 9.715347 14.548391 m 11.446440 14.548391 l 11.446440 17.144000 l 14.958000 17.144000 l s +/Courier-latin1 ff 0.560000 scf sf +(0..n) 9.915347 14.398391 m gs 1 -1 sc sh gr +(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 4.663538 16.042763 m 4.663538 18.242763 l 9.713538 18.242763 l 9.713538 16.042763 l f +0.000000 0.000000 0.000000 srgb +n 4.663538 16.042763 m 4.663538 18.242763 l 9.713538 18.242763 l 9.713538 16.042763 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 7.188538 ex sub 16.692763 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(Dictionary) dup sw 2 div 7.188538 ex sub 17.692763 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 9.763802 17.142763 m 11.761822 17.142763 l 11.761822 17.144000 l 14.958000 17.144000 l s +/Courier-latin1 ff 0.560000 scf sf +(given) 11.861822 16.993381 m gs 1 -1 sc sh gr +n 13.711822 16.993381 m 13.711822 16.593381 l 14.111822 16.793381 l ef +(1) 9.963802 16.992763 m gs 1 -1 sc sh gr +(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 38.373025 16.043657 m 38.373025 18.243657 l 43.423025 18.243657 l 43.423025 16.043657 l f +0.000000 0.000000 0.000000 srgb +n 38.373025 16.043657 m 38.373025 18.243657 l 43.423025 18.243657 l 43.423025 16.043657 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 40.898025 ex sub 16.693657 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(Data) dup sw 2 div 40.898025 ex sub 17.693657 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 38.323936 17.143657 m 33.196440 17.143657 l 33.196440 17.145000 l 32.368000 17.145000 l s +/Courier-latin1 ff 0.560000 scf sf +(Creates) 33.296440 16.994328 m gs 1 -1 sc sh gr +n 35.846440 16.994328 m 35.846440 16.594328 l 36.246440 16.794328 l ef +(0..n) dup sw 38.123936 ex sub 16.993657 m gs 1 -1 sc sh gr +(1) 32.568000 16.995000 m gs 1 -1 sc sh gr +showpage Added: trunk/core/org.cishell.docs/src/img/algExecWorkflow.pdf =================================================================== (Binary files differ) Property changes on: trunk/core/org.cishell.docs/src/img/algExecWorkflow.pdf ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/core/org.cishell.docs/src/img/cishellInteraction.dia =================================================================== (Binary files differ) Property changes on: trunk/core/org.cishell.docs/src/img/cishellInteraction.dia ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/core/org.cishell.docs/src/img/cishellInteraction.eps =================================================================== --- trunk/core/org.cishell.docs/src/img/cishellInteraction.eps (rev 0) +++ trunk/core/org.cishell.docs/src/img/cishellInteraction.eps 2008-01-09 00:57:19 UTC (rev 593) @@ -0,0 +1,581 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: /home/bherr/cishell-workspace/org.cishell.docs/src/img/cishellInteraction.dia +%%Creator: Dia v0.95 +%%CreationDate: Tue Jan 8 18:06:57 2008 +%%For: bherr +%%Orientation: Portrait +%%Magnification: 1.0000 +%%BoundingBox: 0 0 1053 520 +%%BeginSetup +%%EndSetup +%%EndComments +%%BeginProlog +[ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright +/parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one +/two /three /four /five /six /seven /eight /nine /colon /semicolon +/less /equal /greater /question /at /A /B /C /D /E +/F /G /H /I /J /K /L /M /N /O +/P /Q /R /S /T /U /V /W /X /Y +/Z /bracketleft /backslash /bracketright /asciicircum /underscore /quoteleft /a /b /c +/d /e /f /g /h /i /j /k /l /m +/n /o /p /q /r /s /t /u /v /w +/x /y /z /braceleft /bar /braceright /asciitilde /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/space /exclamdown /cent /sterling /currency /yen /brokenbar /section /dieresis /copyright +/ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron /degree /plusminus /twosuperior /threesuperior +/acute /mu /paragraph /periodcentered /cedilla /onesuperior /ordmasculine /guillemotright /onequarter /onehalf +/threequarters /questiondown /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla +/Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis /Eth /Ntilde +/Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply /Oslash /Ugrave /Uacute /Ucircumflex +/Udieresis /Yacute /Thorn /germandbls /agrave /aacute /acircumflex /atilde /adieresis /aring +/ae /ccedilla /egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis +/eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide /oslash /ugrave +/uacute /ucircumflex /udieresis /yacute /thorn /ydieresis] /isolatin1encoding exch def +/cp {closepath} bind def +/c {curveto} bind def +/f {fill} bind def +/a {arc} bind def +/ef {eofill} bind def +/ex {exch} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth pop} bind def +/tr {translate} bind def + +/ellipsedict 8 dict def +ellipsedict /mtrx matrix put +/ellipse +{ ellipsedict begin + /endangle exch def + /startangle exch def + /yrad exch def + /xrad exch def + /y exch def + /x exch def /savematrix mtrx currentmatrix def + x y tr xrad yrad sc + 0 0 1 startangle endangle arc + savematrix setmatrix + end +} def + +/mergeprocs { +dup length +3 -1 roll +dup +length +dup +5 1 roll +3 -1 roll +add +array cvx +dup +3 -1 roll +0 exch +putinterval +dup +4 2 roll +putinterval +} bind def +/Times-Roman-latin1 + /Times-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-Italic-latin1 + /Times-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-Bold-latin1 + /Times-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-BoldItalic-latin1 + /Times-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-Book-latin1 + /AvantGarde-Book findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-BookOblique-latin1 + /AvantGarde-BookOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-Demi-latin1 + /AvantGarde-Demi findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-DemiOblique-latin1 + /AvantGarde-DemiOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-Light-latin1 + /Bookman-Light findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-LightItalic-latin1 + /Bookman-LightItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-Demi-latin1 + /Bookman-Demi findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-DemiItalic-latin1 + /Bookman-DemiItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-latin1 + /Courier findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-Oblique-latin1 + /Courier-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-Bold-latin1 + /Courier-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-BoldOblique-latin1 + /Courier-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-latin1 + /Helvetica findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Oblique-latin1 + /Helvetica-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Bold-latin1 + /Helvetica-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-BoldOblique-latin1 + /Helvetica-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-latin1 + /Helvetica-Narrow findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-Oblique-latin1 + /Helvetica-Narrow-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-Bold-latin1 + /Helvetica-Narrow-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-BoldOblique-latin1 + /Helvetica-Narrow-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Roman-latin1 + /NewCenturySchoolbook-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Italic-latin1 + /NewCenturySchoolbook-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Bold-latin1 + /NewCenturySchoolbook-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-BoldItalic-latin1 + /NewCenturySchoolbook-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Roman-latin1 + /Palatino-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Italic-latin1 + /Palatino-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Bold-latin1 + /Palatino-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-BoldItalic-latin1 + /Palatino-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Symbol-latin1 + /Symbol findfont +definefont pop +/ZapfChancery-MediumItalic-latin1 + /ZapfChancery-MediumItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/ZapfDingbats-latin1 + /ZapfDingbats findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +28.346000 -28.346000 scale +3.053557 -24.440110 translate +%%EndProlog + + +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 14.958000 16.044000 m 14.958000 18.244000 l 22.508000 18.244000 l 22.508000 16.044000 l f +0.000000 0.000000 0.000000 srgb +n 14.958000 16.044000 m 14.958000 18.244000 l 22.508000 18.244000 l 22.508000 16.044000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 18.733000 ex sub 16.694000 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(AlgorithmFactory) dup sw 2 div 18.733000 ex sub 17.694000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 27.468000 16.045000 m 27.468000 18.245000 l 32.518000 18.245000 l 32.518000 16.045000 l f +0.000000 0.000000 0.000000 srgb +n 27.468000 16.045000 m 27.468000 18.245000 l 32.518000 18.245000 l 32.518000 16.045000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 29.993000 ex sub 16.695000 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(Algorithm) dup sw 2 div 29.993000 ex sub 17.695000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 27.417846 17.145000 m 23.876543 17.145000 l 23.876543 17.144000 l 22.556752 17.144000 l s +/Courier-latin1 ff 0.560000 scf sf +(Creates) 23.976543 16.994500 m gs 1 -1 sc sh gr +(n) dup sw 27.217846 ex sub 16.995000 m gs 1 -1 sc sh gr +(1) 22.756752 16.994000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 14.706000 22.187000 m 14.706000 24.387000 l 22.756000 24.387000 l 22.756000 22.187000 l f +0.000000 0.000000 0.000000 srgb +n 14.706000 22.187000 m 14.706000 24.387000 l 22.756000 24.387000 l 22.756000 22.187000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 18.731000 ex sub 22.837000 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(AlgorithmProperty) dup sw 2 div 18.731000 ex sub 23.837000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 15.658686 9.829000 m 15.658686 12.029000 l 21.808686 12.029000 l 21.808686 9.829000 l f +0.000000 0.000000 0.000000 srgb +n 15.658686 9.829000 m 15.658686 12.029000 l 21.808686 12.029000 l 21.808686 9.829000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 18.733686 ex sub 10.479000 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(DataValidator) dup sw 2 div 18.733686 ex sub 11.479000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 25.944343 10.154657 m 25.944343 12.354657 l 34.044343 12.354657 l 34.044343 10.154657 l f +0.000000 0.000000 0.000000 srgb +n 25.944343 10.154657 m 25.944343 12.354657 l 34.044343 12.354657 l 34.044343 10.154657 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 29.994343 ex sub 10.804657 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(ProgressTrackable) dup sw 2 div 29.994343 ex sub 11.804657 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 26.740000 6.159000 m 26.740000 8.359000 l 33.990000 8.359000 l 33.990000 6.159000 l f +0.000000 0.000000 0.000000 srgb +n 26.740000 6.159000 m 26.740000 8.359000 l 33.990000 8.359000 l 33.990000 6.159000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 30.365000 ex sub 6.809000 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(ProgressMonitor) dup sw 2 div 30.365000 ex sub 7.809000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 5.011421 17.736731 m 5.011421 19.936731 l 10.061421 19.936731 l 10.061421 17.736731 l f +0.000000 0.000000 0.000000 srgb +n 5.011421 17.736731 m 5.011421 19.936731 l 10.061421 19.936731 l 10.061421 17.736731 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 7.536421 ex sub 18.386731 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(Data) dup sw 2 div 7.536421 ex sub 19.386731 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n -2.927751 17.728768 m -2.927751 19.928768 l 1.672249 19.928768 l 1.672249 17.728768 l f +0.000000 0.000000 0.000000 srgb +n -2.927751 17.728768 m -2.927751 19.928768 l 1.672249 19.928768 l 1.672249 17.728768 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<class>>) dup sw 2 div -0.627751 ex sub 18.378768 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(BasicData) dup sw 2 div -0.627751 ex sub 19.378768 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slc +n 18.733127 15.995378 m 18.733506 12.564425 l s +[] 0 sd +0 slj +0 slc +n 18.733547 12.189425 m 18.983492 12.689453 l 18.733506 12.564425 l 18.483492 12.689398 l ef +n 18.733547 12.189425 m 18.983492 12.689453 l 18.733506 12.564425 l 18.483492 12.689398 l cp s +/Courier-latin1 ff 0.560000 scf sf +( Optional) 18.733343 14.036500 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slc +n 29.993257 16.017552 m 29.993975 12.868909 l s +[] 0 sd +0 slj +0 slc +n 29.994061 12.493909 m 30.243947 12.993966 l 29.993975 12.868909 l 29.743947 12.993852 l ef +n 29.994061 12.493909 m 30.243947 12.993966 l 29.993975 12.868909 l 29.743947 12.993852 l cp s +/Courier-latin1 ff 0.560000 scf sf +( Optional) 29.993672 14.199828 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 18.731000 22.187000 m 18.736886 22.187000 l 18.736886 18.244000 l 18.733000 18.244000 l s +/Courier-latin1 ff 0.560000 scf sf +(Service Constants) 18.836886 20.065500 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 26.700999 7.259000 m 24.447119 7.259000 l 24.447119 11.254657 l 25.944343 11.254657 l s +/Courier-latin1 ff 0.560000 scf sf +(Communications) 24.547119 9.106828 m gs 1 -1 sc sh gr +(1) dup sw 26.500999 ex sub 7.109000 m gs 1 -1 sc sh gr +(1) dup sw 25.744343 ex sub 11.104657 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 4.410510 11.796019 m 4.410510 13.996019 l 11.010510 13.996019 l 11.010510 11.796019 l f +0.000000 0.000000 0.000000 srgb +n 4.410510 11.796019 m 4.410510 13.996019 l 11.010510 13.996019 l 11.010510 11.796019 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 7.710510 ex sub 12.446019 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(CIShellContext) dup sw 2 div 7.710510 ex sub 13.446019 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 3.336167 6.180019 m 3.336167 8.380019 l 12.086167 8.380019 l 12.086167 6.180019 l f +0.000000 0.000000 0.000000 srgb +n 3.336167 6.180019 m 3.336167 8.380019 l 12.086167 8.380019 l 12.086167 6.180019 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<class>>) dup sw 2 div 7.711167 ex sub 6.830019 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(LocalCIShellContext) dup sw 2 div 7.711167 ex sub 7.830019 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slj +0 slc +n 7.710510 11.258868 m 7.710510 8.828843 l 7.711167 8.828843 l 7.711167 8.429915 l s +[] 0 sd +0 slj +0 slc +n 7.710510 11.633868 m 7.460510 11.133868 l 7.710510 11.258868 l 7.960510 11.133868 l ef +n 7.710510 11.633868 m 7.460510 11.133868 l 7.710510 11.258868 l 7.960510 11.133868 l cp s +0.100000 slw +[] 0 sd +[] 0 sd +0 slj +0 slc +n 22.626177 17.313299 m 21.531491 18.353113 l 22.625491 18.353113 l ef +n 22.626177 17.313299 m 21.531491 18.353113 l 22.625491 18.353113 l cp s +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 4.650942 22.190110 m 4.650942 24.390110 l 10.700942 24.390110 l 10.700942 22.190110 l f +0.000000 0.000000 0.000000 srgb +n 4.650942 22.190110 m 4.650942 24.390110 l 10.700942 24.390110 l 10.700942 22.190110 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 7.675942 ex sub 22.840110 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(DataProperty) dup sw 2 div 7.675942 ex sub 23.840110 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slj +0 slc +n 1.672249 18.828768 m 4.717962 18.828768 l 4.717962 18.836731 l 4.524618 18.836731 l s +[] 0 sd +0 slj +0 slc +n 4.899618 18.836731 m 4.399618 19.086731 l 4.524618 18.836731 l 4.399618 18.586731 l ef +n 4.899618 18.836731 m 4.399618 19.086731 l 4.524618 18.836731 l 4.399618 18.586731 l cp s +0.100000 slw +[] 0 sd +0 slj +0 slc +n 7.675942 22.190110 m 7.339526 22.190110 l 7.339526 19.936731 l 7.536421 19.936731 l s +/Courier-latin1 ff 0.560000 scf sf +(Data Constants) 7.439526 20.913420 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 11.062569 12.898019 m 12.164040 12.898019 l 12.164040 17.144000 l 14.958000 17.144000 l s +/Courier-latin1 ff 0.560000 scf sf +(given) 12.264040 14.871010 m gs 1 -1 sc sh gr +(n) 11.262569 12.748019 m gs 1 -1 sc sh gr +(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 10.061421 18.836731 m 12.164040 18.836731 l 12.164040 17.144000 l 14.958000 17.144000 l s +/Courier-latin1 ff 0.560000 scf sf +(given) 12.264040 17.840365 m gs 1 -1 sc sh gr +(0..n) 10.261421 18.686731 m gs 1 -1 sc sh gr +(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 1.095192 10.315063 m 2.207518 10.315063 l 2.207518 12.896019 l 4.361154 12.896019 l s +/Courier-latin1 ff 0.560000 scf sf +(Provides Access) 2.307518 11.455541 m gs 1 -1 sc sh gr +(4) 1.295192 10.165063 m gs 1 -1 sc sh gr +(n) dup sw 4.161154 ex sub 12.746019 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n -3.003557 9.065063 m 0.446443 9.065063 l 1.046443 9.665063 l 1.046443 11.565063 l -3.003557 11.565063 l ef +0.000000 0.000000 0.000000 srgb +n -3.003557 9.065063 m 0.446443 9.065063 l 1.046443 9.665063 l 1.046443 11.565063 l -3.003557 11.565063 l cp s +0.050000 slw +n 0.446443 9.065063 m 0.446443 9.665063 l 1.046443 9.665063 l s +/Courier-latin1 ff 0.560000 scf sf +(Standard ) -2.653557 10.265063 m gs 1 -1 sc sh gr +(Services) -2.653557 11.065063 m gs 1 -1 sc sh gr +showpage Added: trunk/core/org.cishell.docs/src/img/cishellInteraction.pdf =================================================================== (Binary files differ) Property changes on: trunk/core/org.cishell.docs/src/img/cishellInteraction.pdf ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-01-02 20:40:30 UTC (rev 592) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-01-09 00:57:19 UTC (rev 593) @@ -1,13 +1,35 @@ -\section{Algorithm Definition} +\section{Algorithm Specification} + +\subsection*{\textit{Version 1.0}} + \subsection{Introduction} +The CIShell Platform has been specifically designed around the idea of the +algorithm. It is the central and most important concept. Algorithms are fully +defined and self-contained bits of execution. They can do many things from data +conversion, data analysis, and can even spawn whole outside programs if needs be. +Algorithms are very well defined black boxes in that what can come into and out +of the algorithm is specified in each algorithm's metadata. Other than that, +CIShell makes no attempt to understand the algorithm. + +Figure \ref{fig:algExecWorkflow} shows the flow of information into and out of an +algorithm. Here an algorithm is passed zero or more pieces of data, any +user-entered parameters, and a CIShell context. The algorithm is then executed +and produces zero or more pieces of data. + \begin{figure}[htb!] \centering -\includegraphics[width=90mm]{../img/algorithmDefn.pdf} -\caption{Algorithm Definition} -\label{fig:algorithmDefn} +\includegraphics[width=150mm]{../img/algExecWorkflow.pdf} +\caption{Algorithm Execution Workflow} +\label{fig:algExecWorkflow} \end{figure} +An algorithm defines its inputs in two ways. First, the input Data is defined +in the algorithm's service metadata. Second, the acceptable user-entered +parameters are defined in a MetaTypeProvider. This MetaTypeProvider defines the +types, value range, and textual description of the parameters needed. From this +information, a user interface (UI) can be created that asks a user for the +data. \subsection{Standard Algorithm Properties} \orgcishellframeworkalgorithm{} Modified: trunk/core/org.cishell.docs/src/specification/tex/data.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/data.tex 2008-01-02 20:40:30 UTC (rev 592) +++ trunk/core/org.cishell.docs/src/specification/tex/data.tex 2008-01-09 00:57:19 UTC (rev 593) @@ -1,4 +1,5 @@ -\section{Data Definition} +\section{Data Specification} +\subsection*{\textit{Version 1.0}} \subsection{Introduction} \subsection{Standard Data Properties} \orgcishellframeworkdata{} Modified: trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex 2008-01-02 20:40:30 UTC (rev 592) +++ trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex 2008-01-09 00:57:19 UTC (rev 593) @@ -1,4 +1,5 @@ \chapter{Data Conversion Service Specification} +\section*{\textit{Version 1.0}} \section{Introduction} \section{Data Conversion Service} \orgcishellserviceconversion{} Modified: trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex 2008-01-02 20:40:30 UTC (rev 592) +++ trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex 2008-01-09 00:57:19 UTC (rev 593) @@ -1,4 +1,5 @@ \chapter{Data Manager Application Service Specification} +\section*{\textit{Version 1.0}} \section{Introduction} \section{Data Manager Service} \orgcishellappservicedatamanager{} \ No newline at end of file Modified: trunk/core/org.cishell.docs/src/specification/tex/framework.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-01-02 20:40:30 UTC (rev 592) +++ trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-01-09 00:57:19 UTC (rev 593) @@ -1,5 +1,65 @@ \chapter{Framework API} + +\section*{\textit{Version 1.0}} + \section{Introduction} + +The org.cishell.framework package and subpackages define the core of CIShell. The +key components being algorithms, data, and CIShell service access. + \subsection{Essentials} + +\begin{itemize} + \item \textit{Application Independence} - Algorithms must be usable in a wide + variety of contexts and should not be tied to any one front end where + possible. + \item \textit{Delayed Execution} - There may be a large delay between an + algorithm getting parameters for execution and its actual execution. + \item \textit{Remote Execution} - Algorithm interfaces should be designed to + facilitate remote execution of algorithms where possible. +\end{itemize} + \subsection{Entities} -\subsection{Operations} \ No newline at end of file + +\begin{itemize} + \item \textit{AlgorithmFactory} - The service interface for algorithms. + A factory class which creates an Algorithm for execution from input data. + \item \textit{Algorithm} - The interface for the code execution part of the + algorithm. + \item \textit{AlgorithmProperty} - The interface which provides string + constants for an algorithm's service metadata. + \item \textit{DataValidator} - The interface an AlgorithmFactory extends to + provide additional data validation in addition to the data format validation + that an application should provide ahead of time. + \item \textit{ProgressTrackable} - The interface an Algorithm extends to allow + for more detailed monitoring and control of an Algorithm's progress while + executing. + \item \textit{ProgressMonitor} - The interface for a class to be passed in to + a ProgressTrackable Algorithm so that the Algorithm can be controlled + and provide information on its progress while executing. + \item \textit{Data} - The interface used to pass data (other than + parameters) and meta-data between algorithms. + \item \textit{BasicData} - A simple implementation of the Data interface. + \item \textit{DataProperty} - The interface which provides string constants + for Data's metadata. + \item \textit{CIShellContext} - The interface for a class to be passed in to + an AlgorithmFactory for us in gaining access to standard CIShell services. + \item \textit{LocalCIShellContext} - A simple implementation of the + CIShellContext interface which pulls CIShell services from the OSGi Service + Registry. +\end{itemize} + +\begin{figure}[htb!] +\centering +\includegraphics[width=150mm]{../img/cishellInteraction.pdf} +\caption{org.cishell.framework Class Diagram} +\label{fig:cishellInteraction} +\end{figure} + +\subsection{Operations} + +The algorithm developer should fully implement the AlgorithmFactory interface and +make it available in OSGi's Service Registry. The system developer will provide +the services required by CIShell in OSGi's Service Registry. Application +developers will provide everything else, orchestrating the passing of information +between algorithms. Modified: trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex 2008-01-02 20:40:30 UTC (rev 592) +++ trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex 2008-01-09 00:57:19 UTC (rev 593) @@ -1,4 +1,5 @@ \chapter{GUI Builder Service Specification} +\section*{\textit{Version 1.0}} \section{Introduction} \section{GUI Definition} \section{GUI Builder Service} Modified: trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex 2008-01-02 20:40:30 UTC (rev 592) +++ trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex 2008-01-09 00:57:19 UTC (rev 593) @@ -1,4 +1,5 @@ -\section{GUI Definition} +\section{GUI Specification} +\subsection*{\textit{Version 1.0}} \subsection{Introduction} \subsection{org.osgi.service.metatype} \subsection{MetaType Extensions} Modified: trunk/core/org.cishell.docs/src/specification/tex/introduction.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-01-02 20:40:30 UTC (rev 592) +++ trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-01-09 00:57:19 UTC (rev 593) @@ -1,5 +1,54 @@ \chapter{Introduction} -\section{CIShell Overview} + +The Cyberinfrastructure Shell (CIShell) is an open source, community-driven +platform for the integration and utilization of datasets, algorithms, tools, and +computing resources. It is built specifically to enable (1) algorithm developers +to write and disseminate their algorithms in their favorite programming language +while retaining their intellectual rights after distribution; (2) data holders to +easily disseminate their data for use by others; (3) application developers to +design applications from custom sets of algorithms and datasets that interoperate +seamlessly; and finally (4) researchers, educators, and practitioners to use +existing datasets and algorithms to further science. + +\section{CIShell Platform Overview} + +The CIShell Platform consists of Java interface definitions of algorithms, data, +services for algorithm developers, and services for application developers. Much +of the platform uses metadata and is fully defined. + \section{What is New} + +This is the first release of the CIShell Platform Specification. Future +versions will strive for backwards compatibility. + \section{Reader Level} -\section{Conventions and Terms} \ No newline at end of file + +This specification is written for the following audiences: +\begin{itemize} + \item Java Algorithm developers + \item Non-Java Algorithm developers + \item Framework and system service developers (system developers) + \item Application developers building on CIShell +\end{itemize} + +The CIShell Specifications assume that the reader has at least one year of +practical experience in writing Java programs. CIShell is built to run on the +OSGi Service Platform Release 4 and thus a working knowledge of OSGi is expected. +OSGi (and thus CIShell) is highly dynamic and must be taken into consideration +when developing anything on CIShell. + +Non-Java Algorithm developers may not need to know any Java and should be mainly +concerned with the metadata definitions for Algorithms and Data. They may also +need to be aware of OSGi and the other services CIShell provides, but more than +likely will not directly interact with them. + +\section{Conventions and Terms} + +The conventions and terms are exactly the same as from OSGi's Core +Specification, section 1.4. + +\section{Version Information} + +This is the first release of the CIShell Platform Specification. All packages are +at 1.0 for this release. Subsequent releases may increase the version number of +specific packages, if changes have been made. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bh...@us...> - 2008-01-09 22:34:02
|
Revision: 594 http://cishell.svn.sourceforge.net/cishell/?rev=594&view=rev Author: bh2 Date: 2008-01-09 14:33:54 -0800 (Wed, 09 Jan 2008) Log Message: ----------- Most of org.cishell.framework part of the spec has been rough drafted. Still need to work on algorithm service properties and data properties. Next I'll start drafting the cishell services. Modified Paths: -------------- trunk/core/org.cishell.docs/src/img/algExecWorkflow.dia trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps trunk/core/org.cishell.docs/src/img/algExecWorkflow.pdf trunk/core/org.cishell.docs/src/mystyle.sty trunk/core/org.cishell.docs/src/specification/main.tex trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex trunk/core/org.cishell.docs/src/specification/tex/data.tex trunk/core/org.cishell.docs/src/specification/tex/framework.tex trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex trunk/core/org.cishell.docs/src/specification/tex/introduction.tex trunk/core/org.cishell.docs/src/texdoclet/src/org/wonderly/doclets/TexDoclet.java Modified: trunk/core/org.cishell.docs/src/img/algExecWorkflow.dia =================================================================== (Binary files differ) Modified: trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps =================================================================== --- trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps 2008-01-09 00:57:19 UTC (rev 593) +++ trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps 2008-01-09 22:33:54 UTC (rev 594) @@ -1,11 +1,11 @@ %!PS-Adobe-2.0 EPSF-2.0 %%Title: /home/bherr/cishell-workspace/org.cishell.docs/src/img/algExecWorkflow.dia %%Creator: Dia v0.95 -%%CreationDate: Tue Jan 8 19:30:54 2008 +%%CreationDate: Wed Jan 9 10:58:56 2008 %%For: bherr %%Orientation: Portrait %%Magnification: 1.0000 -%%BoundingBox: 0 0 1146 213 +%%BoundingBox: 0 0 1146 381 %%BeginSetup %%EndSetup %%EndComments @@ -341,7 +341,7 @@ currentdict end definefont pop 28.346000 -28.346000 scale --3.052329 -20.889765 translate +-3.052330 -20.889800 translate %%EndProlog @@ -369,32 +369,32 @@ [] 0 sd 0 slj 0 slc -n 27.273560 17.145000 m 23.346440 17.145000 l 23.346440 17.144000 l 22.555758 17.144000 l s +n 27.273500 17.145000 m 23.346400 17.145000 l 23.346400 17.144000 l 22.558300 17.144000 l s /Courier-latin1 ff 0.560000 scf sf -(Creates) 23.446440 16.994500 m gs 1 -1 sc sh gr -n 25.996440 16.994500 m 25.996440 16.594500 l 26.396440 16.794500 l ef -(1) dup sw 27.073560 ex sub 16.995000 m gs 1 -1 sc sh gr -(1) 22.755758 16.994000 m gs 1 -1 sc sh gr +(creates) 23.446400 16.994500 m gs 1 -1 sc sh gr +n 25.996400 16.994500 m 25.996400 16.594500 l 26.396400 16.794500 l ef +(1) dup sw 27.073500 ex sub 16.995000 m gs 1 -1 sc sh gr +(1) 22.758300 16.994000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 4.665347 13.448391 m 4.665347 15.648391 l 9.715347 15.648391 l 9.715347 13.448391 l f +n 4.652850 16.044700 m 4.652850 18.244700 l 9.702850 18.244700 l 9.702850 16.044700 l f 0.000000 0.000000 0.000000 srgb -n 4.665347 13.448391 m 4.665347 15.648391 l 9.715347 15.648391 l 9.715347 13.448391 l cp s +n 4.652850 16.044700 m 4.652850 18.244700 l 9.702850 18.244700 l 9.702850 16.044700 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 7.190347 ex sub 14.098391 m gs 1 -1 sc sh gr +(<<interface>>) dup sw 2 div 7.177850 ex sub 16.694700 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(Data) dup sw 2 div 7.190347 ex sub 15.098391 m gs 1 -1 sc sh gr +(Data) dup sw 2 div 7.177850 ex sub 17.694700 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 3.102329 18.639765 m 3.102329 20.839765 l 9.702329 20.839765 l 9.702329 18.639765 l f +n 3.102330 18.639800 m 3.102330 20.839800 l 9.702330 20.839800 l 9.702330 18.639800 l f 0.000000 0.000000 0.000000 srgb -n 3.102329 18.639765 m 3.102329 20.839765 l 9.702329 20.839765 l 9.702329 18.639765 l cp s +n 3.102330 18.639800 m 3.102330 20.839800 l 9.702330 20.839800 l 9.702330 18.639800 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 6.402329 ex sub 19.289765 m gs 1 -1 sc sh gr +(<<interface>>) dup sw 2 div 6.402330 ex sub 19.289800 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(CIShellContext) dup sw 2 div 6.402329 ex sub 20.289765 m gs 1 -1 sc sh gr +(CIShellContext) dup sw 2 div 6.402330 ex sub 20.289800 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd [] 0 sd @@ -406,56 +406,137 @@ [] 0 sd 0 slj 0 slc -n 9.702329 19.739765 m 11.446440 19.739765 l 11.446440 17.144000 l 14.958000 17.144000 l s +n 9.702330 19.739800 m 11.446400 19.739800 l 11.446400 17.144000 l 14.958000 17.144000 l s /Courier-latin1 ff 0.560000 scf sf -(1) 9.902329 19.589765 m gs 1 -1 sc sh gr +(1) 9.902330 19.589800 m gs 1 -1 sc sh gr (1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 9.715347 14.548391 m 11.446440 14.548391 l 11.446440 17.144000 l 14.958000 17.144000 l s +n 9.702850 17.144700 m 11.777300 17.144700 l 11.777300 17.144000 l 14.958000 17.144000 l s /Courier-latin1 ff 0.560000 scf sf -(0..n) 9.915347 14.398391 m gs 1 -1 sc sh gr +(given) 11.877300 16.994350 m gs 1 -1 sc sh gr +n 13.727300 16.994350 m 13.727300 16.594350 l 14.127300 16.794350 l ef +(0..n) 9.902850 16.994700 m gs 1 -1 sc sh gr (1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 4.663538 16.042763 m 4.663538 18.242763 l 9.713538 18.242763 l 9.713538 16.042763 l f +n 4.651040 13.330300 m 4.651040 15.530300 l 9.701040 15.530300 l 9.701040 13.330300 l f 0.000000 0.000000 0.000000 srgb -n 4.663538 16.042763 m 4.663538 18.242763 l 9.713538 18.242763 l 9.713538 16.042763 l cp s +n 4.651040 13.330300 m 4.651040 15.530300 l 9.701040 15.530300 l 9.701040 13.330300 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 7.188538 ex sub 16.692763 m gs 1 -1 sc sh gr +(<<interface>>) dup sw 2 div 7.176040 ex sub 13.980300 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(Dictionary) dup sw 2 div 7.188538 ex sub 17.692763 m gs 1 -1 sc sh gr +(Dictionary) dup sw 2 div 7.176040 ex sub 14.980300 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 9.763802 17.142763 m 11.761822 17.142763 l 11.761822 17.144000 l 14.958000 17.144000 l s +n 9.751110 14.430300 m 11.452300 14.430300 l 11.452300 17.144000 l 14.958000 17.144000 l s /Courier-latin1 ff 0.560000 scf sf -(given) 11.861822 16.993381 m gs 1 -1 sc sh gr -n 13.711822 16.993381 m 13.711822 16.593381 l 14.111822 16.793381 l ef -(1) 9.963802 16.992763 m gs 1 -1 sc sh gr +(1) 9.951110 14.280300 m gs 1 -1 sc sh gr (1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 38.373025 16.043657 m 38.373025 18.243657 l 43.423025 18.243657 l 43.423025 16.043657 l f +n 38.373000 16.043700 m 38.373000 18.243700 l 43.423000 18.243700 l 43.423000 16.043700 l f 0.000000 0.000000 0.000000 srgb -n 38.373025 16.043657 m 38.373025 18.243657 l 43.423025 18.243657 l 43.423025 16.043657 l cp s +n 38.373000 16.043700 m 38.373000 18.243700 l 43.423000 18.243700 l 43.423000 16.043700 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 40.898025 ex sub 16.693657 m gs 1 -1 sc sh gr +(<<interface>>) dup sw 2 div 40.898000 ex sub 16.693700 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(Data) dup sw 2 div 40.898025 ex sub 17.693657 m gs 1 -1 sc sh gr +(Data) dup sw 2 div 40.898000 ex sub 17.693700 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 38.323936 17.143657 m 33.196440 17.143657 l 33.196440 17.145000 l 32.368000 17.145000 l s +n 38.323900 17.143700 m 33.196400 17.143700 l 33.196400 17.145000 l 32.368000 17.145000 l s /Courier-latin1 ff 0.560000 scf sf -(Creates) 33.296440 16.994328 m gs 1 -1 sc sh gr -n 35.846440 16.994328 m 35.846440 16.594328 l 36.246440 16.794328 l ef -(0..n) dup sw 38.123936 ex sub 16.993657 m gs 1 -1 sc sh gr +(creates) 33.296400 16.994350 m gs 1 -1 sc sh gr +n 35.846400 16.994350 m 35.846400 16.594350 l 36.246400 16.794350 l ef +(0..n) dup sw 38.123900 ex sub 16.993700 m gs 1 -1 sc sh gr (1) 32.568000 16.995000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 14.842100 7.525020 m 14.842100 9.725020 l 22.392100 9.725020 l 22.392100 7.525020 l f +0.000000 0.000000 0.000000 srgb +n 14.842100 7.525020 m 14.842100 9.725020 l 22.392100 9.725020 l 22.392100 7.525020 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 18.617100 ex sub 8.175020 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(AlgorithmFactory) dup sw 2 div 18.617100 ex sub 9.175020 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 27.902100 7.526020 m 27.902100 9.726020 l 35.802100 9.726020 l 35.802100 7.526020 l f +0.000000 0.000000 0.000000 srgb +n 27.902100 7.526020 m 27.902100 9.726020 l 35.802100 9.726020 l 35.802100 7.526020 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 31.852100 ex sub 8.176020 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(MetaTypeProvider) dup sw 2 div 31.852100 ex sub 9.176020 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 27.852214 8.626020 m 23.434100 8.626020 l 23.434100 8.625020 l 22.442123 8.625020 l s +/Courier-latin1 ff 0.560000 scf sf +(provides) 23.534100 8.475520 m gs 1 -1 sc sh gr +n 26.434100 8.475520 m 26.434100 8.075520 l 26.834100 8.275520 l ef +(1) dup sw 27.652214 ex sub 8.476020 m gs 1 -1 sc sh gr +(1) 22.642123 8.475020 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 4.595000 7.525000 m 4.595000 9.725000 l 9.645000 9.725000 l 9.645000 7.525000 l f +0.000000 0.000000 0.000000 srgb +n 4.595000 7.525000 m 4.595000 9.725000 l 9.645000 9.725000 l 9.645000 7.525000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) dup sw 2 div 7.120000 ex sub 8.175000 m gs 1 -1 sc sh gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(Data) dup sw 2 div 7.120000 ex sub 9.175000 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slj +0 slc +n 22.510300 8.794320 m 21.415600 9.834120 l 22.509600 9.834120 l ef +n 22.510300 8.794320 m 21.415600 9.834120 l 22.509600 9.834120 l cp s +0.100000 slw +[] 0 sd +0 slj +0 slc +n 9.645000 8.625000 m 11.534100 8.625000 l 11.534100 8.625020 l 14.842100 8.625020 l s +/Courier-latin1 ff 0.560000 scf sf +(given) 11.634100 8.475010 m gs 1 -1 sc sh gr +n 13.484100 8.475010 m 13.484100 8.075010 l 13.884100 8.275010 l ef +(0..n) 9.845000 8.475000 m gs 1 -1 sc sh gr +(1) dup sw 14.642100 ex sub 8.475020 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 37.470200 7.774310 m 42.670200 7.774310 l 43.270200 8.374310 l 43.270200 9.474310 l 37.470200 9.474310 l ef +0.000000 0.000000 0.000000 srgb +n 37.470200 7.774310 m 42.670200 7.774310 l 43.270200 8.374310 l 43.270200 9.474310 l 37.470200 9.474310 l cp s +0.050000 slw +n 42.670200 7.774310 m 42.670200 8.374310 l 43.270200 8.374310 l s +/Courier-latin1 ff 0.560000 scf sf +(Get User Input) 37.820200 8.974310 m gs 1 -1 sc sh gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 35.852423 8.626020 m 37.201100 8.626020 l 37.201100 8.624310 l 37.420059 8.624310 l s +/Courier-latin1 ff 0.560000 scf sf +0.100000 slw +[] 0 sd +0 slj +0 slc +n 40.370200 9.522621 m 40.370200 12.650000 l 7.176040 12.650000 l 7.176040 13.330300 l s +/Courier-latin1 ff 0.560000 scf sf +(creates) dup sw 2 div 23.773120 ex sub 12.500000 m gs 1 -1 sc sh gr +n 22.348120 12.500000 m 22.348120 12.100000 l 21.948120 12.300000 l ef showpage Modified: trunk/core/org.cishell.docs/src/img/algExecWorkflow.pdf =================================================================== (Binary files differ) Modified: trunk/core/org.cishell.docs/src/mystyle.sty =================================================================== --- trunk/core/org.cishell.docs/src/mystyle.sty 2008-01-09 00:57:19 UTC (rev 593) +++ trunk/core/org.cishell.docs/src/mystyle.sty 2008-01-09 22:33:54 UTC (rev 594) @@ -1,3 +1,4 @@ % used for custom commands \definecolor{comment}{rgb}{1,0,0} \newcommand{\comments}[1]{\textbf{\textcolor{comment}{#1}}} +\newcommand{\class}[1]{\texttt{#1}} \ No newline at end of file Modified: trunk/core/org.cishell.docs/src/specification/main.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/main.tex 2008-01-09 00:57:19 UTC (rev 593) +++ trunk/core/org.cishell.docs/src/specification/main.tex 2008-01-09 22:33:54 UTC (rev 594) @@ -10,15 +10,18 @@ \usepackage{color} \hypersetup{ - pdftitle={CIShell Specification}, % title - pdfsubject={CIShell Specification}, - pdfauthor={}, + pdftitle={Cyberinfrastructure Shell (CIShell) Core Specification 1.0}, % + title pdfsubject={Cyberinfrastructure Shell (CIShell) Core Specification + 1.0}, + pdfauthor={}, pdfnewwindow=true, % links in new window } \usepackage{../mystyle} -\title{CIShell Specification \\ +\title{Cyberinfrastructure Shell (CIShell) \\ +Core Specification \\ +1.0 \\ \textbf{DRAFT}} % \author{} % Will fill in later % \date{} % ditto @@ -37,6 +40,8 @@ \input{./tex/data.tex} \input{./tex/guidefinition.tex} \orgcishellframework{} +\orgcishellframeworkalgorithm{} +\orgcishellframeworkdata{} %% Each service gets its own tex file \input{./tex/dataconversionservice.tex} Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-01-09 00:57:19 UTC (rev 593) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-01-09 22:33:54 UTC (rev 594) @@ -7,16 +7,30 @@ The CIShell Platform has been specifically designed around the idea of the algorithm. It is the central and most important concept. Algorithms are fully defined and self-contained bits of execution. They can do many things from data -conversion, data analysis, and can even spawn whole outside programs if needs be. -Algorithms are very well defined black boxes in that what can come into and out -of the algorithm is specified in each algorithm's metadata. Other than that, +conversion, data analysis, and can even spawn whole outside programs if it needs +to. Algorithms are very well defined black boxes in that what can come into and +out of the algorithm is specified in each algorithm's metadata. Other than that, CIShell makes no attempt to understand the algorithm. -Figure \ref{fig:algExecWorkflow} shows the flow of information into and out of an -algorithm. Here an algorithm is passed zero or more pieces of data, any -user-entered parameters, and a CIShell context. The algorithm is then executed -and produces zero or more pieces of data. +To be recognized by CIShell, an \class{AlgorithmFactory} must be registered with +OSGi's Service Registry. The service registry requires three things when +registering: An interface (\class{AlgorithmFactory}), an implementation, and a +\class{Dictionary} of metadata. The algorithm developer provides the +implementation and metadata. The metadata helps to differentiate and define the +algorithm for search and discovery, see section \ref{algMetaData}. +An algorithm defines its inputs in two ways. First, the input data is defined in +the algorithm's service metadata. Second, the acceptable user-entered parameters +are defined in a \class{MetaTypeProvider}, see section \ref{GUISpec}. + +Figure \ref{fig:algExecWorkflow} shows the typical flow of information into and +out of an algorithm. First the input parameter specification is pulled from the +\class{AlgorithmFactory}. If parameters are needed, then a UI is created and user +inputs are entered. To create an \class{Algorithm}, the \class{AlgorithmFactory} +is passed the user-entered parameters, zero or more pieces of data, and a +\class{CIShellContext}. The \class{Algorithm} is then executed and produces zero +or more pieces of data. + \begin{figure}[htb!] \centering \includegraphics[width=150mm]{../img/algExecWorkflow.pdf} @@ -24,12 +38,28 @@ \label{fig:algExecWorkflow} \end{figure} -An algorithm defines its inputs in two ways. First, the input Data is defined -in the algorithm's service metadata. Second, the acceptable user-entered -parameters are defined in a MetaTypeProvider. This MetaTypeProvider defines the -types, value range, and textual description of the parameters needed. From this -information, a user interface (UI) can be created that asks a user for the -data. +\subsection{Optional Interfaces} -\subsection{Standard Algorithm Properties} -\orgcishellframeworkalgorithm{} +Algorithm developers may augment algorithms with additional interfaces to enhance +parts of the execution workflow. An \class{AlgorithmFactory} can also implement +the \class{DataValidator} interface to validate the data beyond the data format +validation that an application should provide ahead of time. An \class{Algorithm} +can implement \class{ProgressTrackable} to allow for more detailed monitoring and +control of an \class{Algorithm}'s progress while executing. See each interface's +documentation for more details. + +\subsection{Algorithm Service Metadata} +\label{algMetaData} + +When an algorithm is registered with OSGi's service registry, a dictionary of +metadata is provided. Since the algorithm itself is a black box, the metadata is +used to provide information about the algorithm. Information such as the format +of each \class{Data} item to be inputted and outputted is provided. In addition to the +mechanics of the algorithms, interesting data such as the authors, label, urls, +and description are provided. This metadata can be searched by anyone using +OSGi's service registry to find relevant algorithms for use. + +\comments{Lots more to do here. Need to define what is/isn't mandatory for each +algorithm type. Perhaps some figures\ldots} + + Modified: trunk/core/org.cishell.docs/src/specification/tex/data.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/data.tex 2008-01-09 00:57:19 UTC (rev 593) +++ trunk/core/org.cishell.docs/src/specification/tex/data.tex 2008-01-09 22:33:54 UTC (rev 594) @@ -1,5 +1,16 @@ \section{Data Specification} \subsection*{\textit{Version 1.0}} \subsection{Introduction} -\subsection{Standard Data Properties} -\orgcishellframeworkdata{} + +Data to be operated on is passed around in \class{Data} objects which hold the +real data, the data's format, and its properties (metadata). The data can be any +Java \class{Object}. The format is a string which is either a full Java class or +a mime type if it is a \class{java.lang.File}. The mime type corresponds to the +file's data type and has the following form - ``file:mime/type''. Note that if no +official mime type is available for a file format, a made up one can be used, but +must still conform to how mime types are constructed, see \comments{reference to +mime-type construction}. Finally, the properties help describe the data. The +label to give the data, the parent \class{Data} object from which it was derived +from, and a coarse data type can all be defined in the \class{Data}'s properties. +See the \class{DataProperty} interface definition for specific properties to use. + Modified: trunk/core/org.cishell.docs/src/specification/tex/framework.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-01-09 00:57:19 UTC (rev 593) +++ trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-01-09 22:33:54 UTC (rev 594) @@ -4,11 +4,12 @@ \section{Introduction} -The org.cishell.framework package and subpackages define the core of CIShell. The -key components being algorithms, data, and CIShell service access. +The \class{org.cishell.framework} package and subpackages define the core of +CIShell. The key components being algorithms, data, and CIShell service access. \subsection{Essentials} +\comments{Needs work} \begin{itemize} \item \textit{Application Independence} - Algorithms must be usable in a wide variety of contexts and should not be tied to any one front end where @@ -23,30 +24,33 @@ \begin{itemize} \item \textit{AlgorithmFactory} - The service interface for algorithms. - A factory class which creates an Algorithm for execution from input data. + A factory class which creates an \class{Algorithm} for execution from input + data. \item \textit{Algorithm} - The interface for the code execution part of the algorithm. \item \textit{AlgorithmProperty} - The interface which provides string constants for an algorithm's service metadata. - \item \textit{DataValidator} - The interface an AlgorithmFactory extends to - provide additional data validation in addition to the data format validation + \item \textit{DataValidator} - The interface an \class{AlgorithmFactory} + extends to provide additional data validation in addition to the data format validation that an application should provide ahead of time. - \item \textit{ProgressTrackable} - The interface an Algorithm extends to allow - for more detailed monitoring and control of an Algorithm's progress while + \item \textit{ProgressTrackable} - The interface an \class{Algorithm} extends + to allow for more detailed monitoring and control of an Algorithm's progress while executing. \item \textit{ProgressMonitor} - The interface for a class to be passed in to - a ProgressTrackable Algorithm so that the Algorithm can be controlled - and provide information on its progress while executing. + a \class{ProgressTrackable} \class{Algorithm} so that the \class{Algorithm} + can be controlled and provide information on its progress while executing. \item \textit{Data} - The interface used to pass data (other than parameters) and meta-data between algorithms. - \item \textit{BasicData} - A simple implementation of the Data interface. + \item \textit{BasicData} - A simple implementation of the \class{Data} + interface. \item \textit{DataProperty} - The interface which provides string constants - for Data's metadata. + for \class{Data}'s metadata. \item \textit{CIShellContext} - The interface for a class to be passed in to - an AlgorithmFactory for us in gaining access to standard CIShell services. + an \class{AlgorithmFactory} for use in gaining access to standard CIShell + services. \item \textit{LocalCIShellContext} - A simple implementation of the - CIShellContext interface which pulls CIShell services from the OSGi Service - Registry. + \class{CIShellContext} interface which pulls CIShell services from the OSGi + Service Registry. \end{itemize} \begin{figure}[htb!] @@ -58,8 +62,8 @@ \subsection{Operations} -The algorithm developer should fully implement the AlgorithmFactory interface and -make it available in OSGi's Service Registry. The system developer will provide -the services required by CIShell in OSGi's Service Registry. Application -developers will provide everything else, orchestrating the passing of information -between algorithms. +The algorithm developer should fully implement the \class{AlgorithmFactory} +interface and make it available in OSGi's service registry. The system developer +will provide the services required by CIShell in OSGi's service registry. +Application developers will provide everything else, orchestrating the passing of +information between algorithms. Modified: trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex 2008-01-09 00:57:19 UTC (rev 593) +++ trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex 2008-01-09 22:33:54 UTC (rev 594) @@ -1,5 +1,36 @@ -\section{GUI Specification} +\section{User Interface Specification} +\label{GUISpec} \subsection*{\textit{Version 1.0}} \subsection{Introduction} -\subsection{org.osgi.service.metatype} -\subsection{MetaType Extensions} + +For many algorithms, just looking at the data given isn't enough. Additional +parameters are often needed to know how to operate on a given piece of data. An +algorithm can define what parameters are needed by providing a +\class{MetaTypeProvider}. It defines the types, value range, and textual +description of the parameters needed. From this information, a user interface +(UI) can be created that asks a user for the data. The \class{MetaTypeProvider} +is not tied to any specific UI, so it can be reused depending on the context +(desktop application, web application, command line, etc.). + +\class{MetaTypeProvider} is defined in the OSGi R4 Specification Service +Compendium as part of the Meta Type Service. \class{MetaTypeProvider}s can be +created in code or can be specified in an xml file (as defined in the +specification) and pulled out of the \class{MetaTypeService} service. A +\class{MetaTypeProvider} can be thought of as a collection of UIs. Each UI is +called an \class{ObjectClassDefinition}, which provides a UI name and +description and is a collection of parameters. Each parameter is an +\class{AttributeDefinition} which includes the type, label, description, default +value, and range of valid values. Drop-down boxes can also be defined by using +option labels and values with the \class{AttributeDefinition}. OSGi's +documentation should be consulted for more information. + +\subsection{MetaTypeProvider Extensions} + +Some minor extensions to \class{MetaTypeProvider} were made to support some +use cases. The \class{MetaTypeProvider} supports several simple types such as +strings, integers, booleans, etc, but several useful types are missing. Two +such types are files and directories. To get a file or a directory as input, +create an \class{AttributeDefinition} with string as its type and with ``file:`` +or ``directory:`` (respectively) as its default value. When the algorithm is +run it will receive a \class{String} which is the absolute path to a file or +directory. Modified: trunk/core/org.cishell.docs/src/specification/tex/introduction.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-01-09 00:57:19 UTC (rev 593) +++ trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-01-09 22:33:54 UTC (rev 594) @@ -38,7 +38,7 @@ when developing anything on CIShell. Non-Java Algorithm developers may not need to know any Java and should be mainly -concerned with the metadata definitions for Algorithms and Data. They may also +concerned with the metadata definitions for algorithms and data. They may also need to be aware of OSGi and the other services CIShell provides, but more than likely will not directly interact with them. Modified: trunk/core/org.cishell.docs/src/texdoclet/src/org/wonderly/doclets/TexDoclet.java =================================================================== --- trunk/core/org.cishell.docs/src/texdoclet/src/org/wonderly/doclets/TexDoclet.java 2008-01-09 00:57:19 UTC (rev 593) +++ trunk/core/org.cishell.docs/src/texdoclet/src/org/wonderly/doclets/TexDoclet.java 2008-01-09 22:33:54 UTC (rev 594) @@ -578,12 +578,7 @@ static void layoutClasses( String type, Vector classes ) { if( classes.size() > 0 && !("Classes".equals(type))) { - if (type.startsWith("org.cishell.framework.")) { - os.print("\\subsection{" ); - } else { - os.print("\\section{" ); - } - + os.print("\\section{" ); os.print( type ); os.println( "}{" ); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bh...@us...> - 2008-01-11 21:53:47
|
Revision: 596 http://cishell.svn.sourceforge.net/cishell/?rev=596&view=rev Author: bh2 Date: 2008-01-11 13:53:34 -0800 (Fri, 11 Jan 2008) Log Message: ----------- Lots of updates. Every section now has at least a skeleton. Nowhere near complete. Modified Paths: -------------- trunk/core/org.cishell.docs/src/bibliography.bib trunk/core/org.cishell.docs/src/specification/main.tex trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex trunk/core/org.cishell.docs/src/specification/tex/logservice.tex trunk/core/org.cishell.docs/src/specification/tex/preferencesservice.tex trunk/core/org.cishell.docs/src/specification/tex/schedulerservice.tex Added Paths: ----------- trunk/core/org.cishell.docs/src/img/conversionGraph.epsi trunk/core/org.cishell.docs/src/img/conversionGraph.pdf trunk/core/org.cishell.docs/src/img/conversionGraph.svg Modified: trunk/core/org.cishell.docs/src/bibliography.bib =================================================================== --- trunk/core/org.cishell.docs/src/bibliography.bib 2008-01-10 20:59:40 UTC (rev 595) +++ trunk/core/org.cishell.docs/src/bibliography.bib 2008-01-11 21:53:34 UTC (rev 596) @@ -8,21 +8,3 @@ publisher = {IEEE Computer Society Conference Publishing Services} } -@Unpublished{chrisharrison, - author = {Chris Harrison}, - title = {{WikiViz} v5}, - note = {from \url{http://www.chrisharrison.net/projects/wikiviz/}}, - month = {November}, - year = {2007} -} - -@Article{holowaywiki, - author = {Holloway, Todd and Božicevic, Miran and Börner, Katy}, - title = {Analyzing and Visualizing the Semantic Coverage of Wikipedia and Its Authors}, - journal = {Complexity\textnormal{, Special issue on Understanding Complex Systems}}, - year = {2007}, - volume = {12}, - number = {3}, - pages = {33-40}, - note = {Also available as cs.IR/0512085.q}, -} \ No newline at end of file Added: trunk/core/org.cishell.docs/src/img/conversionGraph.epsi =================================================================== --- trunk/core/org.cishell.docs/src/img/conversionGraph.epsi (rev 0) +++ trunk/core/org.cishell.docs/src/img/conversionGraph.epsi 2008-01-11 21:53:34 UTC (rev 596) @@ -0,0 +1,1061 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Title: +%%Creator: inkscape 0.43 +%%CreationDate: 2008-01-10 12:22 /tmp/ink_ext_RI8V4T +%%For:bherrbherr bherr +%%Pages: 1 +%%DocumentFonts: +%%BoundingBox: 121 451 216 537 +%%EndComments + +%%BeginProlog +%%BeginPreview: 95 86 8 258 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000066bbbb77000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000088440088770000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000001199bb00000088440044990000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000088bb0000000011cc881100000088440066880000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 0011775566000000aa7700000000008899aaaa110000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 0044660088000055cc00000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 00009933880000ee3300000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000011cc440066aa0000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000077110000bb550000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 005588000022dd000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 11997700008888000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 0011880000cc22000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 0011770011dd00000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 00880000559900000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000668888440000000000000000000000000000000000000000000000 +% 55440000886600000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000bb00000000aaffee88110000000000000000000000000000000000 +% 55110000cc2200000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000bbbbbb330055001188ee3300000000000000000000000000000022 +% 55880011dd0000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000bb000000000000000033dd33000000000000000000000000000044 +% cc110055990000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000bb88884400000000000033dd330000000000000000000000000033 +% 66000088880000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000334444220000000000550033ee1100000000000000000000007722 +% 000000aa440000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000aa660088bb0000000000000000000011bbcc +% 880000cc220000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000cc881100bb77000000000000000000008888 +% 110000ff000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 000000000000000000000000000000000000000000009977330022dd220000000000000000002299 +% 000022cc000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000886600000077bb0000000000000000000088 +% 000044aa000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000117700000000bb6600000000000000000022 +% 00008888000000000000000000000000000000000000003399440000000000000000000000000000 +% 000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000557700000033dd00000000000000000000 +% 00008855000000000000000000000000000000000000008800000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000022553300009977000000000000000000 +% 0000bb4400000000000000000000000000000000000044550033000000000000005599bbddeeeeff +% aa4400000000000000000000000000 +% 000000000000000000000000000000000000000000000000000066000022ee110000000000000000 +% 0000ee0000000000000000000000000000000000226644998833000000005599eeaa664400000000 +% 55660033aa88880000000000000000 +% 00000000000000000000000000000000000000000000000000225533000099880000000000000000 +% 0000ff0000000000000000000000000000002288999900440000001188eeaa661100000000000000 +% 000000bb3300220000000000000000 +% 00000000000000000000000000000000000000000000000000118888000011dd1100000000000000 +% 0000cc000000000000000000000000000000003366000000002288ee992200000000000000000000 +% 000000bb0000000000000000000000 +% 000000000000000000000000000000000000000000000000000022cc110000888800000000000000 +% 0044bb0000000000000000000000005530883f550000002299ee8811000000000000000000000000 +% 000000cc1100000000000000000000 +% 0000000000000000000000000000000000000000000000000000003377000011ee22000000000000 +% 0044bb0000000000000000000000883311110000001188ee88110000000000000000000000000000 +% 00000055cc88990000000000000000 +% 00000000000000000000000000000000000000000000000000000000003355008888000000000000 +% 0055880000000000000033770099aa883300000066ee881100000000000000000000000000000000 +% 000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000033dd990022ee110000000000 +% 0088880000000000000088aa11441100000044ccbb22000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000449988000099660000000000 +% 00888800000000000000bbbb880000002299dd550000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 000000000000000000000000000000000000000000000000000000000022aa000033dd0000000000 +% 00884400000000000044880022000088dd8800000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000088000000bb5500000000 +% 00bb440000000000007700000033ccaa220000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000007700000055bb00000000 +% 00bb4400000000000000000088ee5500000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000001100000000dd22000000 +% 00dd000000000000000033ccaa110000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000007799000000 +% 00ff0000000000000077ee5500000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 000000000000000000000000000000000000000000000000000000000000000000000011ee110000 +% 00ee000000000022bbbb220000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000088880000 +% 00000000000077dd7700000000000000000000000000008844000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000022770000 +% 0000000011bbbb220000000000000000000000000000229988000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 00000000dd77000000000000000000000000000000008899cc009988990000111100001122000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 22990000000000000000000000000000000000000000550055554499332277118877004499990000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 88cc33000000000000000000000000000000000000000000001100007700221177aa9944aabb0000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000334400000000000000000000000000000000 +% cc33880000bbffffffeebbbbbbbbbbbbbbbb99888877444444000000000000113300004444883300 +% 000000000000000000000000000000 +% 0000000000000000000000000000000000000000000088bb00000000000000000000000000000055 +% eebbee0000000000000000000044444444444466888899bbbbccffddbb8877442200002288aa1100 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000000aabb660000000000000000000055550000aa +% 22008855000000000000000000000000000000000000000000000011446688bbcceeaa7733000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000033558844882255000000000000005599eeaa66000044 +% 000011220000000000000000000000000000000000000000000000000000000000004488ccee9933 +% 000000000000000000000000000000 +% 000000000000000000000000000000000022668866770000000000001166aaffaa66110000000000 +% 000000000000000000000000000000000000000000000000000000000000000000000000001166dd +% cc4400000000000000000000000000 +% 000000000000000000000000000033222211883300000000002277aaee9955000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 44dd880000bbaa8811000000000000 +% 000000000000000000000011003388228840330000001166ccdd8855000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 0011cc4400bb008844000000000000 +% 00000000000000000055992266885522000000004499dd9944000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 0000000000eebbdd22000000000000 +% 00000000000000000088882288664400002277ddcc66110000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 0000000000bb006677000000000000 +% 00000000000000000099220000000044aaee88330000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 0000000000dd88cc55000000000000 +% 0000000000000000008800000044bbdd660000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000044440000000000000000 +% 000000000000000000330044bbbb4400000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000044ddbb44000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000444400000000000000 +% 000000000000001188dd440000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000bb4400000000002200 +% 00000000000044dd8811000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000ee0000000000889900 +% 000000000066ee440000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000022cc000000002288bb88 +% 0000000066ee33000000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000066990000000000bb5588 +% 00000022ee2200000000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 00000000009966000000000040bb55 +% 00000099770000000000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 0000000000ee220000002211885500 +% 00000088330000000000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 0000000055cc000000008822110000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000009977000000008855000000 +% 88bbbb33000000000000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 00000011ee22000000448877000000 +% bb440000000000000000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000888800004466886600000000 +% bbccbb00000000000000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000663300880000 +% 000033dd11000000bb110000000000 +% bb440044aa4400000000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000884400bb0000 +% 0044dd660000663399880000000000 +% bb44000066ccbb660000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000000088ccbbee0044 +% ffdd5500000022dd00440000000000 +% 00000000000044bbdd66000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000884400bb0000 +% 000000000000008833000000000000 +% 00000000000000003399ee8811000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000884400bb0000 +% 000000000000001155000000000000 +% 000000000000000000002299ee882200000000000000000000000000000000000000000000000044 +% ccbbbb00000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 0000000000000000884400001188ee994400000000000000000000000000000000000000000000cc +% 11001100000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 0000000000000000bb66440000001166bbdd882200000000000000000000000000000000000000bb +% 0088bb33000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 0000000000000000bb99220000000000002288eeaa550000000000000000000000000000000000cc +% 11008844000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 0000000000000000aa000066884411000000000066aaee8844000000000000000000000000000033 +% aaaa9922000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 000000000000000000000033994411000000000000002277bbee9966110000000000000000001100 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000033881166006600000000000000116699eecc8877441100001166ee44 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 0000000000000000000000000011224422338800003300000000000000336688bbccccbbbb994400 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000009999bb33aa885500000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000334455113300000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000001199448800000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +% 00000000000000000000000000000000000000000033889900000000000000000000000000000000 +% 00000000000000000000000000000000000000000000000000000000000000000000000000000000 +% 000000000000000000000000000000 +%%EndImage +%%EndPreview +save countdictstack mark newpath /showpage {} def /setpagedevice {pop} def +%%EndProlog +%%Page: 1 1 +%%BeginDocument: /tmp/ink_ext_RI8V4T +0 842 translate +0.8 -0.8 scale +gsave [1 0 0 1 0 0] concat +gsave +0 0 0 setrgbcolor +newpath +202.89658 437.53802 moveto +201.82626 440.44037 lineto +203.97079 440.44037 lineto +202.89658 437.53802 lineto +202.45126 436.76068 moveto +203.34579 436.76068 lineto +205.56845 442.59271 lineto +204.74814 442.59271 lineto +204.21689 441.09662 lineto +201.58798 441.09662 lineto +201.05673 442.59271 lineto +200.2247 442.59271 lineto +202.45126 436.76068 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +258.51172 448.57703 moveto +258.51172 450.71375 lineto +259.77734 450.71375 lineto +260.20182 450.71375 260.51562 450.62651 260.71875 450.45203 curveto +260.92448 450.27494 261.02734 450.00541 261.02734 449.64343 curveto +261.02734 449.27885 260.92448 449.01062 260.71875 448.83875 curveto +260.51562 448.66427 260.20182 448.57703 259.77734 448.57703 curveto +258.51172 448.57703 lineto +258.51172 446.17859 moveto +258.51172 447.9364 lineto +259.67969 447.9364 lineto +260.0651 447.9364 260.35156 447.86479 260.53906 447.72156 curveto +260.72916 447.57573 260.82421 447.35437 260.82422 447.0575 curveto +260.82421 446.76323 260.72916 446.54318 260.53906 446.39734 curveto +260.35156 446.25151 260.0651 446.17859 259.67969 446.17859 curveto +258.51172 446.17859 lineto +257.72266 445.53015 moveto +259.73828 445.53015 lineto +260.33984 445.53016 260.80338 445.65516 261.12891 445.90515 curveto +261.45442 446.15516 261.61718 446.51062 261.61719 446.97156 curveto +261.61718 447.32833 261.53385 447.61219 261.36719 447.82312 curveto +261.20052 448.03406 260.95573 448.16557 260.63281 448.21765 curveto +261.02083 448.30099 261.32161 448.47547 261.53516 448.74109 curveto +261.7513 449.00411 261.85937 449.33354 261.85938 449.72937 curveto +261.85937 450.2502 261.68229 450.65255 261.32812 450.9364 curveto +260.97395 451.22026 260.47005 451.36218 259.81641 451.36218 curveto +257.72266 451.36218 lineto +257.72266 445.53015 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +259.74609 415.8114 moveto +259.74609 416.64343 lineto +259.48046 416.39604 259.19661 416.21115 258.89453 416.08875 curveto +258.59505 415.96635 258.27604 415.90516 257.9375 415.90515 curveto +257.27083 415.90516 256.76041 416.10958 256.40625 416.51843 curveto +256.05208 416.92469 255.875 417.51323 255.875 418.28406 curveto +255.875 419.05229 256.05208 419.64083 256.40625 420.04968 curveto +256.76041 420.45593 257.27083 420.65906 257.9375 420.65906 curveto +258.27604 420.65906 258.59505 420.59786 258.89453 420.47546 curveto +259.19661 420.35307 259.48046 420.16817 259.74609 419.92078 curveto +259.74609 420.745 lineto +259.47005 420.9325 259.17708 421.07312 258.86719 421.16687 curveto +258.55989 421.26062 258.23437 421.3075 257.89062 421.3075 curveto +257.00781 421.3075 256.3125 421.03796 255.80469 420.4989 curveto +255.29687 419.95724 255.04297 419.21896 255.04297 418.28406 curveto +255.04297 417.34656 255.29687 416.60828 255.80469 416.06921 curveto +256.3125 415.52755 257.00781 415.25672 257.89062 415.25671 curveto +258.23958 415.25672 258.5677 415.30359 258.875 415.39734 curveto +259.18489 415.48849 259.47526 415.62651 259.74609 415.8114 curveto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +168.04361 399.35416 moveto +171.73111 399.35416 lineto +171.73111 400.01822 lineto +168.83267 400.01822 lineto +168.83267 401.74478 lineto +171.61002 401.74478 lineto +171.61002 402.40884 lineto +168.83267 402.40884 lineto +168.83267 404.52213 lineto +171.80142 404.52213 lineto +171.80142 405.18619 lineto +168.04361 405.18619 lineto +168.04361 399.35416 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +221.62907 382.3071 moveto +221.62907 386.84225 lineto +222.5822 386.84225 lineto +223.38688 386.84226 223.97542 386.65996 224.34782 386.29538 curveto +224.72282 385.9308 224.91032 385.35528 224.91032 384.56882 curveto +224.91032 383.78757 224.72282 383.21596 224.34782 382.85397 curveto +223.97542 382.4894 223.38688 382.3071 222.5822 382.3071 curveto +221.62907 382.3071 lineto +220.84001 381.65866 moveto +222.46111 381.65866 lineto +223.59131 381.65867 224.42074 381.89434 224.94939 382.36569 curveto +225.47803 382.83445 225.74235 383.56882 225.74236 384.56882 curveto +225.74235 385.57403 225.47672 386.31231 224.94548 386.78366 curveto +224.41423 387.25502 223.5861 387.49069 222.46111 387.49069 curveto +220.84001 387.49069 lineto +220.84001 381.65866 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +151.79855 465.49472 moveto +155.15012 465.49472 lineto +155.15012 466.15878 lineto +152.58762 466.15878 lineto +152.58762 467.87753 lineto +154.90012 467.87753 lineto +154.90012 468.5416 lineto +152.58762 468.5416 lineto +152.58762 471.32675 lineto +151.79855 471.32675 lineto +151.79855 465.49472 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +204.3125 478.90735 moveto +204.3125 477.34094 lineto +203.02344 477.34094 lineto +203.02344 476.6925 lineto +205.09375 476.6925 lineto +205.09375 479.19641 lineto +204.78906 479.41256 204.45312 479.57662 204.08594 479.6886 curveto +203.71875 479.79797 203.32682 479.85266 202.91016 479.85266 curveto +201.9987 479.85266 201.28515 479.58704 200.76953 479.05579 curveto +200.25651 478.52193 200 477.77975 200 476.82922 curveto +200 475.8761 200.25651 475.13392 200.76953 474.60266 curveto +201.28515 474.06881 201.9987 473.80189 202.91016 473.80188 curveto +203.29036 473.80189 203.65104 473.84876 203.99219 473.9425 curveto +204.33593 474.03626 204.65234 474.17428 204.94141 474.35657 curveto +204.94141 475.19641 lineto +204.64973 474.94902 204.33984 474.76282 204.01172 474.63782 curveto +203.68359 474.51282 203.33854 474.45032 202.97656 474.45032 curveto +202.26302 474.45032 201.72656 474.64954 201.36719 475.04797 curveto +201.01042 475.44642 200.83203 476.04016 200.83203 476.82922 curveto +200.83203 477.61568 201.01042 478.20813 201.36719 478.60657 curveto +201.72656 479.00501 202.26302 479.20422 202.97656 479.20422 curveto +203.2552 479.20422 203.5039 479.18079 203.72266 479.13391 curveto +203.9414 479.08443 204.13802 479.00891 204.3125 478.90735 curveto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +244.33731 467.81543 moveto +245.12637 467.81543 lineto +245.12637 470.20605 lineto +247.99356 470.20605 lineto +247.99356 467.81543 lineto +248.78262 467.81543 lineto +248.78262 473.64746 lineto +247.99356 473.64746 lineto +247.99356 470.87012 lineto +245.12637 470.87012 lineto +245.12637 473.64746 lineto +244.33731 473.64746 lineto +244.33731 467.81543 lineto +fill +grestore +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +208 439.36218 moveto +254 439.36218 255 447.36218 255 447.36218 curveto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +206.54418 435.92063 moveto +246.57662 406.91162 253 415.36218 253 415.36218 curveto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +203 432.36218 moveto +206 382.36218 216 384.36218 216 384.36218 curveto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +198 434.36218 moveto +181 392.36218 174 401.36218 174 401.36218 curveto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +197 442.36218 moveto +152 455.36218 156 463.36218 156 463.36218 curveto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +260 454.36218 moveto +256.43969 474.36218 251 470.36218 251 470.36218 curveto +stroke +0 0 0 setrgbcolor +[] 0 setdash +1 setlinewidth +0 setlinejoin +0 setlinecap +newpath +156 469.36218 moveto +197.55139 489.8774 200 481.36218 200 481.36218 curveto +stroke +gsave [1 0.489579 0 1 0 0] concat +gsave +0 0 0 setrgbcolor +newpath +161.75195 396.17181 moveto +164.26562 396.17181 lineto +164.26562 396.66986 lineto +162.34375 396.66986 lineto +162.34375 397.95892 lineto +164.07812 397.95892 lineto +164.07812 398.45697 lineto +162.34375 398.45697 lineto +162.34375 400.54584 lineto +161.75195 400.54584 lineto +161.75195 396.17181 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +169.01172 397.59271 moveto +165.98828 398.66791 lineto +169.01172 399.73724 lineto +169.01172 400.27045 lineto +165.25586 398.90814 lineto +165.25586 398.42181 lineto +169.01172 397.05951 lineto +169.01172 397.59271 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +169.94043 398.66205 moveto +171.51953 398.66205 lineto +171.51953 399.14252 lineto +169.94043 399.14252 lineto +169.94043 398.66205 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +172.45117 397.59271 moveto +172.45117 397.05951 lineto +176.20703 398.42181 lineto +176.20703 398.90814 lineto +172.45117 400.27045 lineto +172.45117 399.73724 lineto +175.46875 398.66791 lineto +172.45117 397.59271 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +180.41406 399.92181 moveto +180.41406 398.74701 lineto +179.44727 398.74701 lineto +179.44727 398.26068 lineto +181 398.26068 lineto +181 400.13861 lineto +180.77148 400.30072 180.51953 400.42377 180.24414 400.50775 curveto +179.96875 400.58978 179.6748 400.6308 179.3623 400.6308 curveto +178.67871 400.6308 178.14355 400.43158 177.75684 400.03314 curveto +177.37207 399.63275 177.17969 399.07611 177.17969 398.36322 curveto +177.17969 397.64838 177.37207 397.09174 177.75684 396.6933 curveto +178.14355 396.29291 178.67871 396.09272 179.3623 396.09271 curveto +179.64746 396.09272 179.91797 396.12787 180.17383 396.19818 curveto +180.43164 396.2685 180.66894 396.37201 180.88574 396.50873 curveto +180.88574 397.13861 lineto +180.66699 396.95307 180.43457 396.81342 180.18848 396.71967 curveto +179.94238 396.62592 179.68359 396.57904 179.41211 396.57904 curveto +178.87695 396.57904 178.47461 396.72846 178.20508 397.02728 curveto +177.9375 397.32611 177.80371 397.77143 177.80371 398.36322 curveto +177.80371 398.95307 177.9375 399.3974 178.20508 399.69623 curveto +178.47461 399.99506 178.87695 400.14447 179.41211 400.14447 curveto +179.62109 400.14447 179.80761 400.12689 179.97168 400.09174 curveto +180.13574 400.05463 180.2832 399.99799 180.41406 399.92181 curveto +fill +grestore +grestore +gsave [1 -0.53423 0 1 0 0] concat +gsave +0 0 0 setrgbcolor +newpath +162.85449 535.59204 moveto +165.36816 535.59204 lineto +165.36816 536.09009 lineto +163.44629 536.09009 lineto +163.44629 537.37915 lineto +165.18066 537.37915 lineto +165.18066 537.8772 lineto +163.44629 537.8772 lineto +163.44629 539.96606 lineto +162.85449 539.96606 lineto +162.85449 535.59204 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +170.11426 537.01294 moveto +167.09082 538.08813 lineto +170.11426 539.15747 lineto +170.11426 539.69067 lineto +166.3584 538.32837 lineto +166.3584 537.84204 lineto +170.11426 536.47974 lineto +170.11426 537.01294 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +171.04297 538.08228 moveto +172.62207 538.08228 lineto +172.62207 538.56274 lineto +171.04297 538.56274 lineto +171.04297 538.08228 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +173.55371 537.01294 moveto +173.55371 536.47974 lineto +177.30957 537.84204 lineto +177.30957 538.32837 lineto +173.55371 539.69067 lineto +173.55371 539.15747 lineto +176.57129 538.08813 lineto +173.55371 537.01294 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +179.99609 536.17505 moveto +179.19336 538.35181 lineto +180.80176 538.35181 lineto +179.99609 536.17505 lineto +179.66211 535.59204 moveto +180.33301 535.59204 lineto +182 539.96606 lineto +181.38477 539.96606 lineto +180.98633 538.84399 lineto +179.01465 538.84399 lineto +178.61621 539.96606 lineto +177.99219 539.96606 lineto +179.66211 535.59204 lineto +fill +grestore +grestore +gsave [0.778729 1.35752 -0.171495 0.985185 0 0] concat +gsave +0 0 0 setrgbcolor +newpath +246.3611 71.909096 moveto +249.12672 71.909096 lineto +249.12672 72.407143 lineto +246.9529 72.407143 lineto +246.9529 73.702065 lineto +249.0359 73.702065 lineto +249.0359 74.200111 lineto +246.9529 74.200111 lineto +246.9529 75.785072 lineto +249.17946 75.785072 lineto +249.17946 76.283119 lineto +246.3611 76.283119 lineto +246.3611 71.909096 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +249.86208 74.39933 moveto +251.44118 74.39933 lineto +251.44118 74.879799 lineto +249.86208 74.879799 lineto +249.86208 74.39933 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +252.37282 73.329994 moveto +252.37282 72.796791 lineto +256.12868 74.159096 lineto +256.12868 74.645424 lineto +252.37282 76.007729 lineto +252.37282 75.474525 lineto +255.3904 74.40519 lineto +252.37282 73.329994 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +258.8152 72.492104 moveto +258.01247 74.668861 lineto +259.62086 74.668861 lineto +258.8152 72.492104 lineto +258.48122 71.909096 moveto +259.15211 71.909096 lineto +260.81911 76.283119 lineto +260.20387 76.283119 lineto +259.80544 75.161049 lineto +257.83376 75.161049 lineto +257.43532 76.283119 lineto +256.81129 76.283119 lineto +258.48122 71.909096 lineto +fill +grestore +grestore +gsave [0.311433 -1.183861 0.643283 0.765628 0 0] concat +gsave +0 0 0 setrgbcolor +newpath +-108.94738 362.30954 moveto +-109.75011 364.4863 lineto +-108.14172 364.4863 lineto +-108.94738 362.30954 lineto +-109.28136 361.72653 moveto +-108.61047 361.72653 lineto +-106.94347 366.10056 lineto +-107.55871 366.10056 lineto +-107.95714 364.97848 lineto +-109.92883 364.97848 lineto +-110.32726 366.10056 lineto +-110.95129 366.10056 lineto +-109.28136 361.72653 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +-102.505 363.14743 moveto +-105.52843 364.22263 lineto +-102.505 365.29196 lineto +-102.505 365.82516 lineto +-106.26086 364.46286 lineto +-106.26086 363.97653 lineto +-102.505 362.61423 lineto +-102.505 363.14743 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +-101.57628 364.21677 moveto +-99.997182 364.21677 lineto +-99.997182 364.69723 lineto +-101.57628 364.69723 lineto +-101.57628 364.21677 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +-99.065541 363.14743 moveto +-99.065541 362.61423 lineto +-95.309681 363.97653 lineto +-95.309681 364.46286 lineto +-99.065541 365.82516 lineto +-99.065541 365.29196 lineto +-96.047962 364.22263 lineto +-99.065541 363.14743 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +-93.493274 362.21286 moveto +-93.493274 365.61423 lineto +-92.77843 365.61423 lineto +-92.174917 365.61423 -91.733511 365.47751 -91.454211 365.20407 curveto +-91.172965 364.93063 -91.03234 364.49899 -91.032336 363.90915 curveto +-91.03234 363.32321 -91.172965 362.8945 -91.454211 362.62302 curveto +-91.733511 362.34958 -92.174917 362.21286 -92.77843 362.21286 curveto +-93.493274 362.21286 lineto +-94.085071 361.72653 moveto +-92.869251 361.72653 lineto +-92.021597 361.72654 -91.399527 361.90329 -91.003039 362.2568 curveto +-90.606559 362.60837 -90.408317 363.15915 -90.408313 363.90915 curveto +-90.408317 364.66306 -90.607536 365.21677 -91.005969 365.57028 curveto +-91.40441 365.9238 -92.025503 366.10056 -92.869251 366.10056 curveto +-94.085071 366.10056 lineto +-94.085071 361.72653 lineto +fill +grestore +grestore +gsave [1 -0.604907 0 1 0 0] concat +gsave +0 0 0 setrgbcolor +newpath +215.00391 552.41638 moveto +214.20117 554.59314 lineto +215.80957 554.59314 lineto +215.00391 552.41638 lineto +214.66992 551.83337 moveto +215.34082 551.83337 lineto +217.00781 556.2074 lineto +216.39258 556.2074 lineto +215.99414 555.08533 lineto +214.02246 555.08533 lineto +213.62402 556.2074 lineto +213 556.2074 lineto +214.66992 551.83337 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +221.44629 553.25427 moveto +218.42285 554.32947 lineto +221.44629 555.3988 lineto +221.44629 555.93201 lineto +217.69043 554.5697 lineto +217.69043 554.08337 lineto +221.44629 552.72107 lineto +221.44629 553.25427 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +222.375 554.32361 moveto +223.9541 554.32361 lineto +223.9541 554.80408 lineto +222.375 554.80408 lineto +222.375 554.32361 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +224.88574 553.25427 moveto +224.88574 552.72107 lineto +228.6416 554.08337 lineto +228.6416 554.5697 lineto +224.88574 555.93201 lineto +224.88574 555.3988 lineto +227.90332 554.32947 lineto +224.88574 553.25427 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +233.1416 552.17029 moveto +233.1416 552.79431 lineto +232.94238 552.60877 232.72949 552.4701 232.50293 552.3783 curveto +232.27832 552.2865 232.03906 552.2406 231.78516 552.2406 curveto +231.28515 552.2406 230.90234 552.39392 230.63672 552.70056 curveto +230.37109 553.00525 230.23828 553.44666 230.23828 554.02478 curveto +230.23828 554.60095 230.37109 555.04236 230.63672 555.349 curveto +230.90234 555.65369 231.28515 555.80603 231.78516 555.80603 curveto +232.03906 555.80603 232.27832 555.76013 232.50293 555.66833 curveto +232.72949 555.57654 232.94238 555.43787 233.1416 555.25232 curveto +233.1416 555.87048 lineto +232.93457 556.01111 232.71484 556.11658 232.48242 556.18689 curveto +232.25195 556.2572 232.00781 556.29236 231.75 556.29236 curveto +231.08789 556.29236 230.5664 556.09021 230.18555 555.68591 curveto +229.80469 555.27966 229.61426 554.72595 229.61426 554.02478 curveto +229.61426 553.32166 229.80469 552.76795 230.18555 552.36365 curveto +230.5664 551.9574 231.08789 551.75428 231.75 551.75427 curveto +232.01172 551.75428 232.25781 551.78943 232.48828 551.85974 curveto +232.7207 551.9281 232.93847 552.03162 233.1416 552.17029 curveto +fill +grestore +grestore +gsave [0.999917 0.215669 -0.01285755 0.997309 0 0] concat +gsave +0 0 0 setrgbcolor +newpath +236.00296 383.50913 moveto +235.20022 385.68588 lineto +236.80862 385.68588 lineto +236.00296 383.50913 lineto +235.66897 382.92612 moveto +236.33987 382.92612 lineto +238.00686 387.30014 lineto +237.39163 387.30014 lineto +236.99319 386.17807 lineto +235.02151 386.17807 lineto +234.62308 387.30014 lineto +233.99905 387.30014 lineto +235.66897 382.92612 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +242.44534 384.34702 moveto +239.4219 385.42221 lineto +242.44534 386.49155 lineto +242.44534 387.02475 lineto +238.68948 385.66245 lineto +238.68948 385.17612 lineto +242.44534 383.81381 lineto +242.44534 384.34702 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +243.37405 385.41635 moveto +244.95315 385.41635 lineto +244.95315 385.89682 lineto +243.37405 385.89682 lineto +243.37405 385.41635 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +245.88479 384.34702 moveto +245.88479 383.81381 lineto +249.64064 385.17612 lineto +249.64064 385.66245 lineto +245.88479 387.02475 lineto +245.88479 386.49155 lineto +248.90236 385.42221 lineto +245.88479 384.34702 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +251.45705 385.21127 moveto +251.45705 386.81381 lineto +252.40627 386.81381 lineto +252.72462 386.81381 252.95998 386.74838 253.11232 386.61752 curveto +253.26662 386.48471 253.34376 386.28256 253.34377 386.01108 curveto +253.34376 385.73764 253.26662 385.53647 253.11232 385.40756 curveto +252.95998 385.27671 252.72462 385.21128 252.40627 385.21127 curveto +251.45705 385.21127 lineto +251.45705 383.41245 moveto +251.45705 384.73081 lineto +252.33303 384.73081 lineto +252.62209 384.73081 252.83693 384.6771 252.97756 384.56967 curveto +253.12013 384.4603 253.19142 384.29429 253.19142 384.07163 curveto +253.19142 383.85093 253.12013 383.68589 252.97756 383.57651 curveto +252.83693 383.46714 252.62209 383.41245 252.33303 383.41245 curveto +251.45705 383.41245 lineto +250.86525 382.92612 moveto +252.37697 382.92612 lineto +252.82814 382.92612 253.1758 383.01987 253.41994 383.20737 curveto +253.66408 383.39487 253.78615 383.66147 253.78615 384.00717 curveto +253.78615 384.27475 253.72365 384.48765 253.59865 384.64585 curveto +253.47365 384.80405 253.29005 384.90268 253.04787 384.94174 curveto +253.33888 385.00425 253.56447 385.13511 253.72463 385.33432 curveto +253.88673 385.53159 253.96779 385.77866 253.96779 386.07553 curveto +253.96779 386.46616 253.83497 386.76791 253.56935 386.9808 curveto +253.30372 387.1937 252.9258 387.30014 252.43556 387.30014 curveto +250.86525 387.30014 lineto +250.86525 382.92612 lineto +fill +grestore +grestore +gsave [0.583946 -0.983221 0.504158 0.863611 0 0] concat +gsave +0 0 0 setrgbcolor +newpath +-12.777346 529.15479 moveto +-12.185549 529.15479 lineto +-12.185549 530.94775 lineto +-10.035158 530.94775 lineto +-10.035158 529.15479 lineto +-9.4433613 529.15479 lineto +-9.4433613 533.52881 lineto +-10.035158 533.52881 lineto +-10.035158 531.4458 lineto +-12.185549 531.4458 lineto +-12.185549 533.52881 lineto +-12.777346 533.52881 lineto +-12.777346 529.15479 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +-4.4628925 530.57568 moveto +-7.48633 531.65088 lineto +-4.4628925 532.72021 lineto +-4.4628925 533.25342 lineto +-8.2187519 531.89111 lineto +-8.2187519 531.40479 lineto +-4.4628925 530.04248 lineto +-4.4628925 530.57568 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +-3.5341816 531.64502 moveto +-1.95508 531.64502 lineto +-1.95508 532.12549 lineto +-3.5341816 532.12549 lineto +-3.5341816 531.64502 lineto +fill +grestore +gsave +0 0 0 setrgbcolor +newpath +-0.68945503 531.43994 moveto +-0.68945503 533.04248 lineto +0.25976372 533.04248 lineto +0.57812064 533.04248 0.81347197 532.97705 0.96581841 532.84619 curveto +1.1201123 532.71338 1.1972607 532.51123 1.1972637 532.23975 curveto +1.1972607 531.96631 1.1201123 531.76514 0.96581841 531.63623 curveto +0.81347197 531.50537 0.57812064 531.43994 0.25976372 531.43994 curveto +-0.68945503 531.43994 lineto +-0.68945503 529.64111 moveto +-0.68945503 530.95947 lineto +0.18652153 530.95947 lineto +0.47558168 530.95948 0.69042522 530.90576 0.83105278 530.79834 curveto +0.97362806 530.68897 1.0449171 530.52295 1.04492 530.30029 curveto +1.0449171 530.07959 0.97362806 529.91455 0.83105278 529.80518 curveto +0.69042522 529.6958 0.47558168 529.64112 0.18652153 529.64111 curveto +-0.68945503 529.64111 lineto +-1.2812519 529.15479 moveto +0.23046684 529.15479 lineto +0.68163617 529.15479 1.0292921 529.24854 1.2734356 529.43604 curveto +1.5175728 529.62354 1.639643 529.89014 1.6396465 530.23584 curveto +1.639643 530.50342 1.5771431 530.71631 1.4521465 530.87451 curveto +1.3271433 531.03272 1.1435498 531.13135 0.90136528 531.17041 curveto +1.1923778 531.23291 1.4179636 531.36377 1.5781231 531.56299 curveto +1.7402289 531.76026 1.8212835 532.00733 1.8212872 532.3042 curveto +1.8212835 532.69483 1.6884711 532.99658 1.4228497 533.20947 curveto +1.1572216 533.42236 0.77929232 533.52881 0.28906059 533.52881 curveto +-1.2812519 533.52881 lineto +-1.2812519 529.15479 lineto +fill +grestore +grestore +grestore +showpage +%%EndDocument +%%Trailer +cleartomark countdictstack exch sub { end } repeat restore +%%EOF Added: trunk/core/org.cishell.docs/src/img/conversionGraph.pdf =================================================================== (Binary files differ) Property changes on: trunk/core/org.cishell.docs/src/img/conversionGraph.pdf ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/core/org.cishell.docs/src/img/conversionGraph.svg =================================================================== --- trunk/core/org.cishell.docs/src/img/conversionGraph.svg (rev 0) +++ trunk/core/org.cishell.docs/src/img/conversionGraph.svg 2008-01-11 21:53:34 UTC (rev 596) @@ -0,0 +1,257 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="744.09448819" + height="1052.3622047" + id="svg28141" + sodipodi:version="0.32" + inkscape:version="0.43" + sodipodi:docbase="/home/bherr/cishell-workspace/org.cishell.docs/src/img" + sodipodi:docname="conversionGraph.svg" + inkscape:export-filename="/home/bherr/workspace/org.cishell.docs.intro/src/graphics/conversionGraph.png" + inkscape:export-xdpi="1522.2271" + inkscape:export-ydpi="1522.2271"> + <defs + id="defs28143" /> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="3.4472044" + inkscape:cx="318.86479" + inkscape:cy="612.18474" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + showguides="false" + inkscape:window-width="1920" + inkscape:window-height="1132" + inkscape:window-x="1920" + inkscape:window-y="0" /> + <metadata + id="metadata28146"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <text + xml:space="preserve" + style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="200.1622" + y="442.59271" + id="text28149" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + x="200.1622" + y="442.59271" + id="tspan28153">A</tspan></text> + <text + xml:space="preserve" + style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="256.9375" + y="451.36218" + id="text28171" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + x="256.9375" + y="451.36218" + id="tspan28173">B</tspan></text> + <text + xml:space="preserve" + style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="254.59375" + y="421.19421" + id="text28175" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + x="254.59375" + y="421.19421" + id="tspan28177">C</tspan></text> + <text + xml:space="preserve" + style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="167.25845" + y="405.18619" + id="text28179" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + x="167.25845" + y="405.18619" + id="tspan28181">E</tspan></text> + <text + xml:space="preserve" + style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="220.05486" + y="387.49069" + id="text28183" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + x="220.05486" + y="387.49069" + id="tspan28185">D</tspan></text> + <text + xml:space="preserve" + style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="151.0134" + y="471.32675" + id="text28187" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + x="151.0134" + y="471.32675" + id="tspan28189">F</tspan></text> + <text + xml:space="preserve" + style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="199.55078" + y="479.73938" + id="text28191" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + x="199.55078" + y="479.73938" + id="tspan28193">G</tspan></text> + <text + xml:space="preserve" + style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="243.55215" + y="473.64746" + id="text28195" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + x="243.55215" + y="473.64746" + id="tspan28197">H</tspan></text> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="M 208,439.36218 C 254,439.36218 255,447.36218 255,447.36218" + id="path28199" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="M 206.54418,435.92063 C 246.57662,406.91162 253,415.36218 253,415.36218" + id="path28201" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="M 203,432.36218 C 206,382.36218 216,384.36218 216,384.36218" + id="path28203" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="M 198,434.36218 C 181,392.36218 174,401.36218 174,401.36218" + id="path28205" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="M 197,442.36218 C 152,455.36218 156,463.36218 156,463.36218" + id="path28207" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="M 260,454.36218 C 256.43969,474.36218 251,470.36218 251,470.36218" + id="path28211" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="M 156,469.36218 C 197.55139,489.8774 200,481.36218 200,481.36218" + id="path28213" /> + <text + xml:space="preserve" + style="font-size:6px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="161.16309" + y="400.54584" + id="text28215" + sodipodi:linespacing="125%" + transform="matrix(1,0.489579,0,1,0,0)"><tspan + sodipodi:role="line" + id="tspan28217" + x="161.16309" + y="400.54584">F<->G</tspan></text> + <text + xml:space="preserve" + style="font-size:6px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="162.26562" + y="539.96606" + id="text28219" + sodipodi:linespacing="125%" + transform="matrix(1,-0.53423,0,1,0,0)"><tspan + sodipodi:role="line" + id="tspan28221" + x="162.26562" + y="539.96606">F<->A</tspan></text> + <text + xml:space="preserve" + style="font-size:6px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="245.77223" + y="76.283119" + id="text28223" + sodipodi:linespacing="125%" + transform="matrix(0.778729,1.35752,-0.171495,0.985185,0,0)"><tspan + sodipodi:role="line" + id="tspan28225" + x="245.77223" + y="76.283119">E->A</tspan></text> + <text + xml:space="preserve" + style="font-size:6.00000143px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="-110.99816" + y="366.10056" + id="text28227" + sodipodi:linespacing="125%" + transform="matrix(0.311433,-1.183861,0.643283,0.765628,0,0)"><tspan + sodipodi:role="line" + id="tspan28229" + x="-110.99816" + y="366.10056">A<->D</tspan></text> + <text + xml:space="preserve" + style="font-size:6px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="212.95312" + y="556.2074" + id="text28231" + sodipodi:linespacing="125%" + transform="matrix(1,-0.604907,0,1,0,0)"><tspan + sodipodi:role="line" + id="tspan28233" + x="212.95312" + y="556.2074">A<->C</tspan></text> + <text + xml:space="preserve" + style="font-size:5.99999571px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="233.95218" + y="387.30014" + id="text28235" + sodipodi:linespacing="125%" + transform="matrix(0.999917,0.215669,-1.285755e-2,0.997309,0,0)"><tspan + sodipodi:role="line" + id="tspan28237" + x="233.95218" + y="387.30014">A<->B</tspan></text> + <text + xml:space="preserve" + style="font-size:6px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="-13.366213" + y="533.52881" + id="text28239" + sodipodi:linespacing="125%" + transform="matrix(0.583946,-0.983221,0.504158,0.863611,0,0)"><tspan + sodipodi:role="line" + id="tspan28241" + x="-13.366213" + y="533.52881">H<-B</tspan></text> + </g> +</svg> Property changes on: trunk/core/org.cishell.docs/src/img/conversionGraph.svg ___________________________________________________________________ Name: svn:mime-type + text/plain Modified: trunk/core/org.cishell.docs/src/specification/main.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/main.tex 2008-01-10 20:59:40 UTC (rev 595) +++ trunk/core/org.cishell.docs/src/specification/main.tex 2008-01-11 21:53:34 UTC (rev 596) @@ -45,10 +45,10 @@ %% Each service gets its own tex file \input{./tex/dataconversionservice.tex} -\input{./tex/datamanagerservice.tex} \input{./tex/guibuilderservice.tex} \input{./tex/logservice.tex} \input{./tex/preferencesservice.tex} +\input{./tex/datamanagerservice.tex} \input{./tex/schedulerservice.tex} % Bibliography: Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-01-10 20:59:40 UTC (rev 595) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-01-11 21:53:34 UTC (rev 596) @@ -62,4 +62,7 @@ \comments{Lots more to do here. Need to define what is/isn't mandatory for each algorithm type. Perhaps some figures\ldots} +\subsubsection{Standard Algorithm Constraints} +\label{algConstraints} + Modified: trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex 2008-01-10 20:59:40 UTC (rev 595) +++ trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex 2008-01-11 21:53:34 UTC (rev 596) @@ -1,5 +1,113 @@ \chapter{Data Conversion Service Specification} \section*{\textit{Version 1.0}} \section{Introduction} + +A conscious design decision was made for CIShell not to enforce a central data +model/format that all algorithms had to work with. Instead, an algorithm +expresses in its service metadata for each data item coming into and out of the +algorithm what the format of the data is. It is the job of the code calling the +algorithm to get the data in the right format before calling the algorithm. The +Data Conversion Service is used here to simplify the process of converting data. + +\subsection{Entities} + +\begin{itemize} + \item \textit{DataConversionService} - The service interface for converting + data to different formats. + \item \textit{Converter Algorithm} - A special type of algorithm which + converts data from one format to another. + \item \textit{Converter} - The interface for a wrapped set of converter + algorithms returned by the \class{DataConversionService} that will convert + data from one format to another. + \item \textit{Validator} - A special type of converter algorithm which checks + a specified file to see if it is a particular file format. +\end{itemize} + \section{Data Conversion Service} + +The Data Conversion Service provides unified access to converter algorithms. +\class{DataConversionService} system developers may choose not to use converter +algorithms, but is ill-advised. Also, good implementations will take advantage of +the nature of algorithms to allow for more than just single hop conversions. +Since all converter algorithms specify a single data object in and a single data +object out, a graph can be constructed where nodes are the data formats and edges +are the converters. Using this directed grap... [truncated message content] |
From: <bh...@us...> - 2008-02-01 19:19:12
|
Revision: 616 http://cishell.svn.sourceforge.net/cishell/?rev=616&view=rev Author: bh2 Date: 2008-02-01 11:19:04 -0800 (Fri, 01 Feb 2008) Log Message: ----------- * Decided against refactoring service listeners to be services themselves * Discussion on recommended logging at different levels * Expanded several services' specification text * Commented out bibliography section until we have references to reference, if ever * Expanded several sections * Described OSGi Prerequisites Modified Paths: -------------- trunk/core/org.cishell.docs/src/specification/main.tex trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex trunk/core/org.cishell.docs/src/specification/tex/framework.tex trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex trunk/core/org.cishell.docs/src/specification/tex/logservice.tex trunk/core/org.cishell.docs/src/specification/tex/preferencesservice.tex trunk/core/org.cishell.docs/src/specification/tex/schedulerservice.tex Added Paths: ----------- trunk/core/org.cishell.docs/src/img/guiCreationWorkflow.dia trunk/core/org.cishell.docs/src/img/guiCreationWorkflow.eps trunk/core/org.cishell.docs/src/img/guiCreationWorkflow.pdf trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex Added: trunk/core/org.cishell.docs/src/img/guiCreationWorkflow.dia =================================================================== (Binary files differ) Property changes on: trunk/core/org.cishell.docs/src/img/guiCreationWorkflow.dia ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/core/org.cishell.docs/src/img/guiCreationWorkflow.eps =================================================================== --- trunk/core/org.cishell.docs/src/img/guiCreationWorkflow.eps (rev 0) +++ trunk/core/org.cishell.docs/src/img/guiCreationWorkflow.eps 2008-02-01 19:19:04 UTC (rev 616) @@ -0,0 +1,463 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: /home/bherr/workspace/org.cishell.docs/src/img/guiCreationWorkflow.dia +%%Creator: Dia v0.96.1 +%%CreationDate: Fri Feb 1 12:08:35 2008 +%%For: bherr +%%Orientation: Portrait +%%Magnification: 1.0000 +%%BoundingBox: 0 0 564 234 +%%BeginSetup +%%EndSetup +%%EndComments +%%BeginProlog +[ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright +/parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one +/two /three /four /five /six /seven /eight /nine /colon /semicolon +/less /equal /greater /question /at /A /B /C /D /E +/F /G /H /I /J /K /L /M /N /O +/P /Q /R /S /T /U /V /W /X /Y +/Z /bracketleft /backslash /bracketright /asciicircum /underscore /quoteleft /a /b /c +/d /e /f /g /h /i /j /k /l /m +/n /o /p /q /r /s /t /u /v /w +/x /y /z /braceleft /bar /braceright /asciitilde /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/space /exclamdown /cent /sterling /currency /yen /brokenbar /section /dieresis /copyright +/ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron /degree /plusminus /twosuperior /threesuperior +/acute /mu /paragraph /periodcentered /cedilla /onesuperior /ordmasculine /guillemotright /onequarter /onehalf +/threequarters /questiondown /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla +/Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis /Eth /Ntilde +/Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply /Oslash /Ugrave /Uacute /Ucircumflex +/Udieresis /Yacute /Thorn /germandbls /agrave /aacute /acircumflex /atilde /adieresis /aring +/ae /ccedilla /egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis +/eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide /oslash /ugrave +/uacute /ucircumflex /udieresis /yacute /thorn /ydieresis] /isolatin1encoding exch def +/cp {closepath} bind def +/c {curveto} bind def +/f {fill} bind def +/a {arc} bind def +/ef {eofill} bind def +/ex {exch} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth pop} bind def +/tr {translate} bind def + +/ellipsedict 8 dict def +ellipsedict /mtrx matrix put +/ellipse +{ ellipsedict begin + /endangle exch def + /startangle exch def + /yrad exch def + /xrad exch def + /y exch def + /x exch def /savematrix mtrx currentmatrix def + x y tr xrad yrad sc + 0 0 1 startangle endangle arc + savematrix setmatrix + end +} def + +/mergeprocs { +dup length +3 -1 roll +dup +length +dup +5 1 roll +3 -1 roll +add +array cvx +dup +3 -1 roll +0 exch +putinterval +dup +4 2 roll +putinterval +} bind def +/Times-Roman-latin1 + /Times-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-Italic-latin1 + /Times-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-Bold-latin1 + /Times-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Times-BoldItalic-latin1 + /Times-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-Book-latin1 + /AvantGarde-Book findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-BookOblique-latin1 + /AvantGarde-BookOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-Demi-latin1 + /AvantGarde-Demi findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/AvantGarde-DemiOblique-latin1 + /AvantGarde-DemiOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-Light-latin1 + /Bookman-Light findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-LightItalic-latin1 + /Bookman-LightItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-Demi-latin1 + /Bookman-Demi findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Bookman-DemiItalic-latin1 + /Bookman-DemiItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-latin1 + /Courier findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-Oblique-latin1 + /Courier-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-Bold-latin1 + /Courier-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Courier-BoldOblique-latin1 + /Courier-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-latin1 + /Helvetica findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Oblique-latin1 + /Helvetica-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Bold-latin1 + /Helvetica-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-BoldOblique-latin1 + /Helvetica-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-latin1 + /Helvetica-Narrow findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-Oblique-latin1 + /Helvetica-Narrow-Oblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-Bold-latin1 + /Helvetica-Narrow-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Helvetica-Narrow-BoldOblique-latin1 + /Helvetica-Narrow-BoldOblique findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Roman-latin1 + /NewCenturySchoolbook-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Italic-latin1 + /NewCenturySchoolbook-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-Bold-latin1 + /NewCenturySchoolbook-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/NewCenturySchoolbook-BoldItalic-latin1 + /NewCenturySchoolbook-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Roman-latin1 + /Palatino-Roman findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Italic-latin1 + /Palatino-Italic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-Bold-latin1 + /Palatino-Bold findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Palatino-BoldItalic-latin1 + /Palatino-BoldItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/Symbol-latin1 + /Symbol findfont +definefont pop +/ZapfChancery-MediumItalic-latin1 + /ZapfChancery-MediumItalic findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +/ZapfDingbats-latin1 + /ZapfDingbats findfont + dup length dict begin + {1 index /FID ne {def} {pop pop} ifelse} forall + /Encoding isolatin1encoding def + currentdict end +definefont pop +28.346000 -28.346000 scale +1.430000 -10.305000 translate +%%EndProlog + + +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n -1.380000 2.130000 m -1.380000 4.330000 l 6.587500 4.330000 l 6.587500 2.130000 l f +0.000000 0.000000 0.000000 srgb +n -1.380000 2.130000 m -1.380000 4.330000 l 6.587500 4.330000 l 6.587500 2.130000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) 0.328750 2.632500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(MetaTypeProvider) -1.130000 3.600000 m +dup sw 7.467500 exch sub +16 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 0.070000 7.605000 m 0.070000 9.805000 l 5.120000 9.805000 l 5.120000 7.605000 l f +0.000000 0.000000 0.000000 srgb +n 0.070000 7.605000 m 0.070000 9.805000 l 5.120000 9.805000 l 5.120000 7.605000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) 0.320000 8.107500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(GUI) 1.862500 9.075000 m +dup sw 1.465000 exch sub +3 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 10.395000 2.130000 m 10.395000 4.330000 l 18.347500 4.330000 l 18.347500 2.130000 l f +0.000000 0.000000 0.000000 srgb +n 10.395000 2.130000 m 10.395000 4.330000 l 18.347500 4.330000 l 18.347500 2.130000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) 12.096250 2.632500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(GUIBuilderService) 10.645000 3.600000 m +dup sw 7.452500 exch sub +17 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slj +0 slc +n 18.390237 3.390461 m 17.295537 4.430261 l 18.389537 4.430261 l ef +n 18.390237 3.390461 m 17.295537 4.430261 l 18.389537 4.430261 l cp s +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 9.383141 7.603098 m 9.383141 9.803098 l 17.073141 9.803098 l 17.073141 7.603098 l f +0.000000 0.000000 0.000000 srgb +n 9.383141 7.603098 m 9.383141 9.803098 l 17.073141 9.803098 l 17.073141 7.603098 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) 10.953141 8.105598 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(SelectionListener) 9.633141 9.073098 m +dup sw 7.190000 exch sub +17 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 6.637009 3.230000 m 7.570000 3.230000 l 7.570000 3.230000 l 10.395000 3.230000 l s +/Courier-latin1 ff 0.560000 scf sf +(given) 7.670000 2.950000 m +dup sw 1.750000 exch sub +5 div exch 0.0 exch + gs 1 -1 sc ashow gr +(n) 6.837009 2.950000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 9.845000 2.950000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 14.371250 4.380258 m 14.371250 6.101090 l 2.595000 6.101090 l 2.595000 7.554982 l s +(Creates) 7.258125 5.821090 m +dup sw 2.450000 exch sub +7 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 14.571250 4.782758 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +(n) 2.795000 7.157482 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 5.167678 8.705000 m 5.819508 8.705000 l 5.819508 8.703098 l 9.333453 8.703098 l s +(notifies) 5.919508 8.424049 m +dup sw 2.800000 exch sub +8 div exch 0.0 exch + gs 1 -1 sc ashow gr +showpage Added: trunk/core/org.cishell.docs/src/img/guiCreationWorkflow.pdf =================================================================== (Binary files differ) Property changes on: trunk/core/org.cishell.docs/src/img/guiCreationWorkflow.pdf ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Modified: trunk/core/org.cishell.docs/src/specification/main.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/main.tex 2008-02-01 16:10:45 UTC (rev 615) +++ trunk/core/org.cishell.docs/src/specification/main.tex 2008-02-01 19:19:04 UTC (rev 616) @@ -36,6 +36,7 @@ \input{./tex/introduction.tex} \input{./tex/framework.tex} +\input{./tex/osgidependencies.tex} \input{./tex/algorithms.tex} \input{./tex/algorithmtypes.tex} \input{./tex/data.tex} @@ -52,9 +53,10 @@ \input{./tex/datamanagerservice.tex} \input{./tex/schedulerservice.tex} +%%% We have no references thus far, so this is commented out for now. % Bibliography: -\clearpage -\bibliographystyle{plain} -\bibliography{../bibliography} +% \clearpage +% \bibliographystyle{plain} +% \bibliography{../bibliography} \end{document} Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-02-01 16:10:45 UTC (rev 615) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-02-01 19:19:04 UTC (rev 616) @@ -14,7 +14,7 @@ To be recognized by CIShell, an \class{AlgorithmFactory} must be registered with OSGi's Service Registry. The service registry requires three things when -registering: An interface (\class{AlgorithmFactory}), an implementation, and a +registering: an interface (\class{AlgorithmFactory}), an implementation, and a \class{Dictionary} of metadata. The algorithm developer provides the implementation and metadata. The metadata helps to differentiate and define the algorithm for search and discovery, see section \ref{algMetaData}. Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex 2008-02-01 16:10:45 UTC (rev 615) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex 2008-02-01 19:19:04 UTC (rev 616) @@ -48,16 +48,17 @@ simultaneously a classification and a location on a GUI's menubar to place the algorithm in. See section \ref{algMetaData} for how to format a ``menu\_path''. - \item The algorithm's service metadata must not have a ``type'' set. \end{itemize} \subsubsection*{Optional:} \begin{itemize} + \item The algorithm's service metadata should have ``remoteable=true'' if it meets the requirements of a remoteable algorithm. \item The algorithm's service metadata should have ``parentage=default'' if it wishes to use the default \class{Data} parenting scheme described in section \ref{algMetaData}. + \item The algorithm's service metadata does not need to have a ``type'' set. \item As much of the informational metadata as possible should be provided. This includes ``authors'', ``implementors'', ``integrators'', ``documentation\_url'', ``reference'', ``reference\_url'', and ``written\_in''. @@ -83,7 +84,7 @@ \item The algorithm's service metadata must contain a legal ``service.pid''. \item The algorithm's service metadata must have ``type=converter''. \item The algorithm's service metadata must have ``conversion=lossy'' if - data is lossed during conversion or ``conversion=lossless'' if not. + data is lost during conversion or ``conversion=lossless'' if not. \end{itemize} \subsubsection*{Optional:} @@ -107,7 +108,9 @@ necessary due to the fact that one cannot simply assume based on the file extension what type of file format the data is in. Checking the contents of the file is necessary, especially in the case of multiple file formats for the same -file extension (e.g., XML). A validator algorithm has the following constraints: +file extension (e.g., XML). This type of algorithm is important for reliably +bringing in outside data and saving out data from CIShell. A validator algorithm +has the following constraints: \subsubsection*{Required:} \begin{itemize} Modified: trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex 2008-02-01 16:10:45 UTC (rev 615) +++ trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex 2008-02-01 19:19:04 UTC (rev 616) @@ -25,17 +25,18 @@ \section{Data Conversion Service} The Data Conversion Service provides unified access to converter algorithms. -\class{DataConversionService} system developers may choose not to use converter -algorithms, but is ill-advised. Also, good implementations will take advantage of -the nature of algorithms to allow for more than just single hop conversions. -Since all converter algorithms specify a single data object in and a single data -object out, a graph can be constructed where nodes are the data formats and edges -are the converters. Using this directed graph, when a conversion between data -formats is requested, the \class{DataConversionService} will choose the shortest -path of converters to do the conversion. A hypothetical conversion graph is -illustrated in figure \ref{fig:conversionGraph}. +\class{DataConversionService} system developers may choose not to leverage +converter algorithms, but this is ill-advised. Also, good implementations will +take advantage of the nature of converter algorithms to allow for more than just +single hop conversions. Since all converter algorithms specify a single data +object in and a single data object out, a graph can be constructed where nodes +are the data formats and edges are the converters. Using this directed graph, +when a conversion between data formats is requested, the +\class{DataConversionService} will choose the shortest path of converters to do +the conversion. A hypothetical conversion graph is illustrated in figure +\ref{fig:conversionGraph}. -\begin{figure}[htb!] +\begin{figure}[h!] \centering \includegraphics[width=70mm]{../img/conversionGraph.pdf} \caption{A Conversion Graph} Modified: trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex 2008-02-01 16:10:45 UTC (rev 615) +++ trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex 2008-02-01 19:19:04 UTC (rev 616) @@ -20,13 +20,7 @@ implementation of \class{DataManagerListener} with empty method implementations. \item \textit{Data} - The interface used to pass data (other than - parameters) and meta-data between algorithms. + parameters) and its metadata between algorithms. \end{itemize} -\section{Data Manager Service} - -\comments{Needs to be expanded\ldots} -\comments{Refactor listeners to be services a la: -http://www.osgi.org/documents/osgi\_technology/whiteboard.pdf } - \orgcishellappservicedatamanager{} \ No newline at end of file Modified: trunk/core/org.cishell.docs/src/specification/tex/framework.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-02-01 16:10:45 UTC (rev 615) +++ trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-02-01 19:19:04 UTC (rev 616) @@ -8,12 +8,14 @@ CIShell. The key components being algorithms, data, and CIShell service access. \subsection{Essentials} - -\comments{Needs work} \begin{itemize} \item \textit{Application Independence} - Algorithms must be usable in a wide - variety of contexts and should not be tied to any one front end where - possible. + variety of contexts and should not be tied to any one CIShell environment or + front end where possible. + \item \textit{User Interface Independence} - Algorithms should not have to tie + themselves to a single UI where possible. + \item \textit{Black Box Algorithms} - Algorithms are black boxes whose + possible interactions are described in metadata. \item \textit{Delayed Execution} - There may be a large delay between an algorithm getting parameters for execution and its actual execution. \item \textit{Remote Execution} - Algorithm interfaces should be designed to Modified: trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex 2008-02-01 16:10:45 UTC (rev 615) +++ trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex 2008-02-01 19:19:04 UTC (rev 616) @@ -2,13 +2,14 @@ \section*{\textit{Version 1.0}} \section{Introduction} -The GUI Builder Service provides a user-interface-agnostic solution to -create UIs for simple user input. The UIs are built from the user interface -specification provided by \class{MetaTypeProvider} and requires no UI coding to -be done other than providing an implementation of \class{MetaTypeProvider}. -Information on creating these classes can be found in section \ref{GUISpec}. In -addition to this, simple methods for creating warnings, pop-ups, and -simple yes/no dialog boxes are provided by the GUI Builder Service. +The GUI Builder Service provides a user-interface-agnostic solution to create UIs +for simple user input. The UIs are built from the user interface specification +provided by \class{MetaTypeProvider} and requires no UI coding to be done other +than providing an implementation of \class{MetaTypeProvider}. Information on +creating these classes can be found in section \ref{GUISpec}. In addition, simple +methods for creating warnings, pop-ups, and simple yes/no dialog boxes are +provided by the GUI Builder Service. The GUI creation workflow is illustrated in +figure \ref{fig:guiCreationWorkflow}. \subsection{Entities} @@ -23,9 +24,11 @@ generated by the user's interaction with the UI. \end{itemize} -\section{GUI Builder Service} +\begin{figure}[htb!] +\centering +\includegraphics[width=90mm]{../img/guiCreationWorkflow.pdf} +\caption{GUI Creation Workflow} +\label{fig:guiCreationWorkflow} +\end{figure} -\comments{Needs expanded. Should probably talk about remote GUIs\ldots} -\comments{Insert a figure of the interaction between the entities\ldots} - \orgcishellserviceguibuilder{} Modified: trunk/core/org.cishell.docs/src/specification/tex/logservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/logservice.tex 2008-02-01 16:10:45 UTC (rev 615) +++ trunk/core/org.cishell.docs/src/specification/tex/logservice.tex 2008-02-01 19:19:04 UTC (rev 616) @@ -1,4 +1,5 @@ \chapter{Log Service Specification} +\label{logService} \section*{Version 1.3} \section{Introduction} @@ -7,6 +8,25 @@ built on CIShell a standard logging sytem to use. This service has not been extended or modified. More information about the \class{LogService} is available in the OSGi Service Platform Service Compendium Specification R4, section 101 -under ``Log Service Specification''. +under ``Log Service Specification''. Recommend output per log level for CIShell +algorithms are listed in table \ref{table:logLevels}. -\comments{Perhaps a discussion on recommend logging at different levels} \ No newline at end of file +\begin{table}[htb!] +\begin{center} +\begin{tabular}{l p{12cm}} +\textbf{Log Level} & \textbf{Recommended Use} \\ +LOG\_DEBUG & Used for problem determination and may be irrelevent to anyone but +the algorithm developer. \\ +LOG\_ERROR & Indicates a problem occurred while the algorithm was executing. +Indicators of possible fixes should be outputted to this level along with +relevent information describing what went wrong, if possible. \\ +LOG\_INFO & Used for providing information about and while the algorithm is +executing and does not indicate a problem. \\ +LOG\_WARNING & Indicates that the algorithm will still be executed, but +that outputs may not be what was expected. This is often in response to +illogical, but still valid user inputs. +\end{tabular} +\end{center} +\caption{Log Level Recommendations for Algorithms} +\label{table:logLevels} +\end{table} \ No newline at end of file Added: trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex (rev 0) +++ trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex 2008-02-01 19:19:04 UTC (rev 616) @@ -0,0 +1,33 @@ +\section{OSGi Dependencies} + +CIShell is built to be run in a fully compliant OSGi Service Platform R4 +implementation. In addition to the base OSGi implementation, several +optional OSGi services are required to be available in a fully compliant CIShell +implementation. Each additional required service is described in the OSGi +Service Platform Service Compendium R4. + +\subsection*{Required Service} +\begin{description} + \item[Metatype Service] as described in OSGi section 105 ``Metatype Service + Specification'', this service defines the \class{MetaTypeProvider} class used + for specifying user interfaces in CIShell. In addition, it provides an XML + format for automatically generating \class{MetaTypeProvider}s and a service, + \class{MetaTypeService} for harvesting them for use by bundles. + \item[Log Service] as described in OSGi section 101 ``Log Service + Specification'', this service is used as a universal logging system for + algorithms and services. See chapter \ref{logService} for more details. + \item[Preferences Service] as described in OSGi section 106 ``Preferences + Service Specification'', this service is used as a universal preference storage + system for algorithms and services. See chapter \ref{preferencesService} for + more details. + \item[Configuration Admin Service] \comments{More details when the expanded + prefs spec is done\ldots} +\end{description} + +\subsection*{Recommended Services} +\begin{description} + + \item[Declarative Services] as described in OSGi section 112 ``Declarative + Services Specification'', this service can be used by CIShell algorithms to + simplify algorithm service registration and for finding necessary auxilary services.\item[] +\end{description} Modified: trunk/core/org.cishell.docs/src/specification/tex/preferencesservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/preferencesservice.tex 2008-02-01 16:10:45 UTC (rev 615) +++ trunk/core/org.cishell.docs/src/specification/tex/preferencesservice.tex 2008-02-01 19:19:04 UTC (rev 616) @@ -1,4 +1,5 @@ \chapter{Preferences Service Specification} +\label{preferencesService} \section*{Version 1.1} \section{Introduction} Modified: trunk/core/org.cishell.docs/src/specification/tex/schedulerservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/schedulerservice.tex 2008-02-01 16:10:45 UTC (rev 615) +++ trunk/core/org.cishell.docs/src/specification/tex/schedulerservice.tex 2008-02-01 19:19:04 UTC (rev 616) @@ -21,10 +21,4 @@ implementations. \end{itemize} -\section{Scheduler Service} - -\comments{Needs to be expanded\ldots} -\comments{Refactor listeners to be services a la: -http://www.osgi.org/documents/osgi\_technology/whiteboard.pdf } - \orgcishellappservicescheduler{} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bh...@us...> - 2008-03-04 23:54:20
|
Revision: 642 http://cishell.svn.sourceforge.net/cishell/?rev=642&view=rev Author: bh2 Date: 2008-03-04 15:53:10 -0800 (Tue, 04 Mar 2008) Log Message: ----------- * fixed doclet to fix some latex output bugs * incorporating lots of various suggestions from team members * fought an epic battle with latex/javadoc to make it line break in a sane manner * added exceptions to algorithm and converter * made periods in javadocs consistent: Javadocs with only one 'sentence' do not get a period. Those with more than one 'sentence' do. * added a section on 'dataset algorithms' * added DataProperty.SHORT_LABEL Modified Paths: -------------- branches/spec_update/org.cishell.framework/src/org/cishell/app/service/datamanager/DataManagerListener.java branches/spec_update/org.cishell.framework/src/org/cishell/app/service/datamanager/DataManagerService.java branches/spec_update/org.cishell.framework/src/org/cishell/app/service/scheduler/SchedulerListener.java branches/spec_update/org.cishell.framework/src/org/cishell/app/service/scheduler/SchedulerService.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/CIShellContext.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/LocalCIShellContext.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/Algorithm.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmFactory.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/DataValidator.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ProgressMonitor.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ProgressTrackable.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/BasicData.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/Data.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/DataProperty.java branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/Converter.java branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/DataConversionService.java branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/GUI.java branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/GUIBuilderService.java branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/SelectionListener.java trunk/core/org.cishell.docs/src/specification/main.tex trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex trunk/core/org.cishell.docs/src/specification/tex/data.tex trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex trunk/core/org.cishell.docs/src/specification/tex/framework.tex trunk/core/org.cishell.docs/src/specification/tex/introduction.tex trunk/core/org.cishell.docs/src/specification/tex/logservice.tex trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex trunk/core/org.cishell.docs/src/specification/tex/preferencesservice.tex trunk/core/org.cishell.docs/src/specification/tex/schedulerservice.tex trunk/core/org.cishell.docs/src/texdoclet/src/org/wonderly/doclets/TexDoclet.java Added Paths: ----------- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmExecutionException.java branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/ConversionException.java Modified: branches/spec_update/org.cishell.framework/src/org/cishell/app/service/datamanager/DataManagerListener.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/app/service/datamanager/DataManagerListener.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/app/service/datamanager/DataManagerListener.java 2008-03-04 23:53:10 UTC (rev 642) @@ -17,7 +17,7 @@ /** - * A listener that is notified of changes in the {@link DataManagerService}. + * A listener that is notified of changes in the {@link DataManagerService} * * @author Bruce Herr (bh...@bh...) */ Modified: branches/spec_update/org.cishell.framework/src/org/cishell/app/service/datamanager/DataManagerService.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/app/service/datamanager/DataManagerService.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/app/service/datamanager/DataManagerService.java 2008-03-04 23:53:10 UTC (rev 642) @@ -94,7 +94,7 @@ * to change the label so that it is unique. * * @param data The Data - * @param label The new label for the data model. + * @param label The new label for the data model */ public void setLabel(Data data, String label); } Modified: branches/spec_update/org.cishell.framework/src/org/cishell/app/service/scheduler/SchedulerListener.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/app/service/scheduler/SchedulerListener.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/app/service/scheduler/SchedulerListener.java 2008-03-04 23:53:10 UTC (rev 642) @@ -45,7 +45,7 @@ /** * Notification that an already scheduled Algorithm has been unscheduled - * and will therefore not be run. + * and will therefore not be run * * @param algorithm The scheduled Algorithm that was unscheduled */ @@ -62,8 +62,8 @@ * Notification that an Algorithm has finished executing * * @param algorithm The scheduled Algorithm - * @param createdData The Data(s) it returned, or <code>null</code> if - * it returned <code>null</code> + * @param createdData The {@link Data} array it returned, or + * <code>null</code> if it returned <code>null</code> */ public void algorithmFinished(Algorithm algorithm, Data[] createdData); @@ -86,7 +86,7 @@ /** * Notification that the scheduler's schedule of Algorithms to be run has - * been cleared. + * been cleared */ public void schedulerCleared(); } Modified: branches/spec_update/org.cishell.framework/src/org/cishell/app/service/scheduler/SchedulerService.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/app/service/scheduler/SchedulerService.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/app/service/scheduler/SchedulerService.java 2008-03-04 23:53:10 UTC (rev 642) @@ -89,7 +89,7 @@ public boolean unschedule(Algorithm algorithm); /** - * Adds a listener to be notified of events happening in the scheduler. + * Adds a listener to be notified of events happening in the scheduler * * @param listener The listener to be added */ @@ -138,7 +138,7 @@ * * @param algorithm The Algorithm * @return The scheduled time for the Algorithm to run or <code>null</code> - * if the Algorithm is not scheduled or has completed execution. + * if the Algorithm is not scheduled or has completed execution */ public Calendar getScheduledTime(Algorithm algorithm); Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/CIShellContext.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/CIShellContext.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/CIShellContext.java 2008-03-04 23:53:10 UTC (rev 642) @@ -44,10 +44,10 @@ * Locates and returns a standard service given the service name. The * service name is generally the full class name of the service interface. * For example, <code>LogService</code>'s string is - * <code>org.osgi.service.log.LogService</code> + * <code>org.osgi.service.log.LogService</code>. * * @param service A string (usually the associated interface's full - * class name) that specifies the service to retrieve. + * class name) that specifies the service to retrieve * @return An instantiated version of the service requested */ public Object getService(String service); Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/LocalCIShellContext.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/LocalCIShellContext.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/LocalCIShellContext.java 2008-03-04 23:53:10 UTC (rev 642) @@ -36,7 +36,7 @@ * <code>BundleContext</code> * * @param bContext The <code>BundleContext</code> to use to find - * the registered standard services. + * the registered standard services */ public LocalCIShellContext(BundleContext bContext) { this(bContext, DEFAULT_SERVICES); @@ -48,9 +48,9 @@ * this <code>CIShellContext</code>. * * @param bContext The <code>BundleContext</code> to use to find - * registered standard services. + * registered standard services * @param standardServices An array of strings specifying the services that - * are allowed to be retrieved from this class. + * are allowed to be retrieved from this class */ public LocalCIShellContext(BundleContext bContext, String[] standardServices) { this.bContext = bContext; Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/Algorithm.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/Algorithm.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/Algorithm.java 2008-03-04 23:53:10 UTC (rev 642) @@ -28,9 +28,13 @@ public interface Algorithm { /** - * Executes and optionally returns a Data array. + * Executes and optionally returns a Data array * - * @return A Data array that was created or <code>null</code> + * @return A Data array that was created. <code>null</code> is ONLY acceptable + * when the algorithms out_data is null. + * @throws AlgorithmExecutionException An exception has occured while executing + * the algorithm. This exception should have a user-comprehendable message if + * at all possible. */ - public Data[] execute(); + public Data[] execute() throws AlgorithmExecutionException; } Added: branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmExecutionException.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmExecutionException.java (rev 0) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmExecutionException.java 2008-03-04 23:53:10 UTC (rev 642) @@ -0,0 +1,32 @@ +/* **************************************************************************** + * CIShell: Cyberinfrastructure Shell, An Algorithm Integration Framework. + * + * All rights reserved. This program and the accompanying materials are made + * available under the terms of the Apache License v2.0 which accompanies + * this distribution, and is available at: + * http://www.apache.org/licenses/LICENSE-2.0.html + * + * Created on Feb 8, 2008 at Indiana University. + * + * Contributors: + * Indiana University - Initial API + * ***************************************************************************/ +package org.cishell.framework.algorithm; + +/** + * An exception which is thrown when an error occurs in the process of executing + * an {@link Algorithm} + * + * @author Bruce Herr (bh...@bh...) + */ +public class AlgorithmExecutionException extends Exception { + private static final long serialVersionUID = 9017277008277139930L; + + public AlgorithmExecutionException(Exception exception) { + super(exception); + } + + public AlgorithmExecutionException(String message) { + super(message); + } +} Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmFactory.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmFactory.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmFactory.java 2008-03-04 23:53:10 UTC (rev 642) @@ -22,18 +22,18 @@ /** * A class for creating {@link Algorithm}s. This class provides the * parameters needed by its associated <code>Algorithm</code> on demand and when - * given correct data, will create an <code>Algorithm</code> that can be executed. - * An algorithm developer who wishes to be usable by CIShell applications must - * create an implementation of this interface and register it (along with some - * standard metadata about the algorithm, defined in the - * {@link AlgorithmProperty} class) in the OSGi service registry. + * given correct data, will create an <code>Algorithm</code> that can be executed. + * <br> + * An algorithm developer must create an implementation of this interface and + * register it (along with some standard metadata about the algorithm, defined + * in the {@link AlgorithmProperty} class) in the OSGi service registry. * * @author Bruce Herr (bh...@bh...) */ public interface AlgorithmFactory { /** - * Creates a set of parameter definitions that define what parameters are - * needed in order to run its associated Algorithm. + * Creates a set of parameter definitions that specify what parameters are + * needed in order to run its associated Algorithm * * @param data An optional argument, the Data array that will be given to * this class to create an Algorithm with the createAlgorithm @@ -46,7 +46,7 @@ public MetaTypeProvider createParameters(Data[] data); /** - * Creates an {@link Algorithm} to be executed. + * Creates an {@link Algorithm} to be executed * * @param data The data to be given to the Algorithm to process. * Some Algorithms may ignore this value. The order and @@ -54,7 +54,7 @@ * dictionary (the 'in_data' key) when registered as a * service in OSGi. * @param parameters A set of key-value pairs that were created based on - * the parameters given by the createParameters method. + * the parameters given by the createParameters method * @param context The context by which the Algorithm can gain access to * standard CIShell services * @return An <code>Algorithm</code> primed for execution Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/DataValidator.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/DataValidator.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/DataValidator.java 2008-03-04 23:53:10 UTC (rev 642) @@ -24,7 +24,7 @@ * make additional checks. For example, if an algorithm only worked on * symmetric matrices, this interface would check the data ahead of time * to ensure that the given matrix was in fact a symmetric matrix. - * <br /> + * <br> * In order for CIShell applications to fully recognize this additional validation * method, an algorithm developer must register this interface in addition to the * algorithm interface when registering their service. Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ProgressMonitor.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ProgressMonitor.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ProgressMonitor.java 2008-03-04 23:53:10 UTC (rev 642) @@ -59,14 +59,14 @@ /** * Notifies the start of execution of the algorithm in addition to - * revealing how many work units will be used. + * revealing how many work units will be used * * @param capabilities An OR'ed int that tells the monitor what the * algorithm is capable of with respect to the * monitor. The OR'ed values are taken from the int * constants specified in this interface. * @param totalWorkUnits The number of work units, -1 if the - * algorithm does not provide progress information. + * algorithm does not provide progress information */ public void start(int capabilities, int totalWorkUnits); @@ -74,19 +74,19 @@ * Notifies that a certain number of units of work has been completed * * @param work The number of units of work completed - * since last notification. + * since last notification */ public void worked(int work); /** - * The algorithm is finished executing. + * The algorithm is finished executing */ public void done(); /** * Sets or clears a flag for cancellation of this algorithm's execution. * An algorithm developer can ignore or clear this flag if it cannot stop - * midstream. This is one of the methods that can be called by someone + * midstream. This is one of the methods that can be called by something * other than the algorithm. * * @param value Set or clear the cancellation request @@ -105,7 +105,7 @@ /** * Sets or clears a flag for pausing of this algorithm's execution. An * algorithm developer can ignore or clear this flag if it cannot pause - * midstream. This is one of the methods that can be called by someone + * midstream. This is one of the methods that can be called by something * other than the algorithm. * * @param value Set or clear the pause request @@ -123,7 +123,7 @@ /** * Method to describe what the algorithm is currently doing for the benefit - * of the users of the algorithm as it progresses during execution. + * of the users of the algorithm as it progresses during execution * * @param currentWork A short description of the current work the algorithm * is doing Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ProgressTrackable.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ProgressTrackable.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ProgressTrackable.java 2008-03-04 23:53:10 UTC (rev 642) @@ -38,10 +38,10 @@ /** * Returns the progress monitor currently in use, or <code>null</code> if - * no monitor has been set. + * no monitor has been set * * @return The current progress monitor, or <code>null</code> if there - * isn't one set. + * isn't one set */ public ProgressMonitor getProgressMonitor(); } Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/BasicData.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/BasicData.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/BasicData.java 2008-03-04 23:53:10 UTC (rev 642) @@ -58,9 +58,9 @@ } /** - * @see org.cishell.framework.data.Data#getMetaData() + * @see org.cishell.framework.data.Data#getMetadata() */ - public Dictionary getMetaData() { + public Dictionary getMetadata() { return properties; } Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/Data.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/Data.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/Data.java 2008-03-04 23:53:10 UTC (rev 642) @@ -29,10 +29,10 @@ * * @return The data's metadata */ - public Dictionary getMetaData(); + public Dictionary getMetadata(); /** - * Returns the data stored in this Data object. + * Returns the data stored in this Data object * * @return The data (a Java object) */ Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/DataProperty.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/DataProperty.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/DataProperty.java 2008-03-04 23:53:10 UTC (rev 642) @@ -16,7 +16,7 @@ /** * Standard property keys to use when creating metadata for a - * {@link Data} object. + * {@link Data} object * * @author Bruce Herr (bh...@bh...) */ @@ -28,12 +28,20 @@ public static final String LABEL = "Label"; /** + * A short label to give the Data object for shorter displays. It is + * recommended to keep the string length below 20 characters. This will often + * be used for recommended file names when saving the data to disk. The type + * associated with this property is of type {@link String}. + */ + public static final String SHORT_LABEL = "Short_Label"; + + /** * The parent Data object of the Data object. This is used when a Data object * is derived from another Data object to show the hierarchical relationship * between them. This property can be null, signifying that the Data object * was not derived from any other Data object, such as when loading a new Data * object from a file. The type associated with this property is of type - * {@link Data} + * {@link Data}. */ public static final String PARENT = "Parent"; @@ -48,7 +56,7 @@ /** * Flag to determine if the Data object has been modified and not saved since * the modification. This is used to do things like notify the user before - * they exit that a modified Data object exists and see if they want to save + * they exit that a modified Data object exists and ask if they want to save * it. The type associated with this property is of type {@link Boolean}. */ public static final String MODIFIED = "Modified"; @@ -68,6 +76,6 @@ /** Says this data model is abstractly a plain text file */ public static String TEXT_TYPE = "Text"; - /** Says this data model is abstractly an informational graph. */ - public static String GRAPH_TYPE = "Graph"; + /** Says this data model is abstractly a data plot */ + public static String PLOT_TYPE = "Plot"; } Added: branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/ConversionException.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/ConversionException.java (rev 0) +++ branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/ConversionException.java 2008-03-04 23:53:10 UTC (rev 642) @@ -0,0 +1,33 @@ +/* **************************************************************************** + * CIShell: Cyberinfrastructure Shell, An Algorithm Integration Framework. + * + * All rights reserved. This program and the accompanying materials are made + * available under the terms of the Apache License v2.0 which accompanies + * this distribution, and is available at: + * http://www.apache.org/licenses/LICENSE-2.0.html + * + * Created on Feb 8, 2008 at Indiana University. + * + * Contributors: + * Indiana University - Initial API + * ***************************************************************************/ +package org.cishell.service.conversion; + + +/** + * An exception which is thrown when an error occurs in the process of data + * conversion + * + * @author Bruce Herr (bh...@bh...) + */ +public class ConversionException extends Exception { + private static final long serialVersionUID = 1749134893481511313L; + + public ConversionException(Exception exception) { + super(exception); + } + + public ConversionException(String message) { + super(message); + } +} Modified: branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/Converter.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/Converter.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/Converter.java 2008-03-04 23:53:10 UTC (rev 642) @@ -21,7 +21,7 @@ import org.osgi.framework.ServiceReference; /** - * A class for converting Data objects. + * A class for converting Data objects * * @author Bruce Herr (bh...@bh...) */ @@ -29,16 +29,16 @@ /** * Returns an array of ServiceReferences to converter algorithms in the order - * in which they will be called when converting a Data object. + * in which they will be called when converting a Data object * - * @return An array of ServiceReferences to converter algorithms to be used. + * @return An array of ServiceReferences to converter algorithms to be used */ public ServiceReference[] getConverterChain(); /** * Returns the AlgorithmFactory that can be invoked to convert a given * Data object of the correct input format (as specified in the Dictionary - * from getProperties()) to a Data object of the correct output format. + * from getProperties()) to a Data object of the correct output format * * @return The AlgorithmFactory to do the converting */ @@ -58,11 +58,11 @@ /** * Uses this Converter to convert the given Data object to a new format. * This is a convenience method that uses this Converter to convert a Data - * object of the corrent format to a Data object of the defined output format + * object of the corrent format to a Data object of the defined output format. * * @param data The Data object with compatible format - * @return A Data object of correct output format, or <code>null</code> if the - * conversion fails + * @return A Data object of correct output format + * @throws ConversionException If the data conversion fails while converting */ - public Data convert(Data data); + public Data convert(Data data) throws ConversionException; } Modified: branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/DataConversionService.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/DataConversionService.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/service/conversion/DataConversionService.java 2008-03-04 23:53:10 UTC (rev 642) @@ -46,8 +46,8 @@ * String should be formatted in the same way as an * algorithm's {@link AlgorithmProperty#OUT_DATA}. * @return An array of {@link Converter}s that can convert a Data object of - * the given inFormat to the given outFormat, or <code>null</code> - * if there is no way to convert. + * the given inFormat to the specified outFormat, or + * <code>null</code> if there is no valid conversion sequence */ public Converter[] findConverters(String inFormat, String outFormat); @@ -57,20 +57,22 @@ * * @param data The Data object to convert * @param outFormat The output format to convert to - * @return An array of converters (may be zero length) that can convert the - * given Data object to the specified output format. + * @return An array of {@link Converter}s that can convert the + * given Data object to the specified output format, or + * <code>null</code> if there is no valid conversion sequence */ public Converter[] findConverters(Data data, String outFormat); /** * Tries to convert a given Data object to the specified output format. If * the conversion fails or there is no way to convert it, this method will - * return a <code>null</code> + * return a <code>null</code>. * * @param data The Data to convert * @param outFormat The format of the Data object to be returned * @return A Data object with the specified output format, or - * <code>null</code> if the conversion fails + * <code>null</code> if there is no valid conversion sequence + * @throws ConversionException If the data conversion fails while converting */ - public Data convert(Data data, String outFormat); + public Data convert(Data data, String outFormat) throws ConversionException; } Modified: branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/GUI.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/GUI.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/GUI.java 2008-03-04 23:53:10 UTC (rev 642) @@ -24,13 +24,13 @@ public interface GUI { /** * Pops up this GUI, gets data from the user, and returns what they entered. - * This is a convenience method that first opens the GUI, then pops the GUI - * up to the user, who then enters in the needed information, which is then + * This is a convenience method that first opens the GUI, then shows the GUI + * to the user, who then enters in the needed information, which is then * taken and put into a {@link Dictionary}, and is given to this method's * caller. * - * @return The data the user entered or <code>null</code> if they cancelled - * the operation. + * @return The data the user entered or <code>null</code> if the operation + * was cancelled */ public Dictionary openAndWait(); @@ -52,7 +52,7 @@ /** * Sets the selection listener to be informed when the user finishes - * entering information and hits 'Ok' or cancels. + * entering information and hits 'Ok' or cancels * * @param listener The listener to notify */ Modified: branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/GUIBuilderService.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/GUIBuilderService.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/GUIBuilderService.java 2008-03-04 23:53:10 UTC (rev 642) @@ -35,7 +35,7 @@ * * Algorithm writers are encouraged to use this service if they need to get * additional input from the user rather than creating their own GUI. This is - * to ensure a consistant user input method and so that the GUI can easily be + * to ensure a consistent user input method and so that the GUI can easily be * routed to the user when running remotely. * * @author Bruce Herr (bh...@bh...) @@ -66,8 +66,8 @@ * MetaTypeProvider * @param parameters Provides the parameters needed to get information from * the user - * @return The data the user entered or <code>null</code> if they cancelled - * the operation. + * @return The data the user entered or <code>null</code> if the operation + * was cancelled */ public Dictionary createGUIandWait(String id, MetaTypeProvider parameters); @@ -77,7 +77,7 @@ * @param title The title of the pop-up * @param message The message to display * @param detail Additional details - * @return If they clicked "Ok", <code>true</code>, otherwise + * @return If they clicked "Ok," <code>true</code>, otherwise * <code>false</code> */ public boolean showConfirm(String title, String message, String detail); @@ -88,7 +88,7 @@ * @param title The title of the pop-up * @param message The question to display * @param detail Additional details - * @return If they clicked "Yes", <code>true</code>, otherwise + * @return If they clicked "Yes," <code>true</code>, otherwise * <code>false</code> */ public boolean showQuestion(String title, String message, String detail); Modified: branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/SelectionListener.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/SelectionListener.java 2008-02-27 19:04:07 UTC (rev 641) +++ branches/spec_update/org.cishell.framework/src/org/cishell/service/guibuilder/SelectionListener.java 2008-03-04 23:53:10 UTC (rev 642) @@ -17,8 +17,8 @@ /** * A listener that is notified when all values entered by a {@link GUI} user - * have been validated and they have clicked 'Ok' to proceed or if they - * cancelled the operation + * have been validated and they have clicked 'Ok' to proceed or if the operation + * was cancelled * * @author Bruce Herr (bh...@bh...) */ Modified: trunk/core/org.cishell.docs/src/specification/main.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/main.tex 2008-02-27 19:04:07 UTC (rev 641) +++ trunk/core/org.cishell.docs/src/specification/main.tex 2008-03-04 23:53:10 UTC (rev 642) @@ -2,8 +2,8 @@ %% % -\documentclass[pdftex,11pt,a4paper]{report} -\usepackage[top=0.4in, left=0.5in, right=0.5in, bottom=0.6in]{geometry} +\documentclass[pdftex,11pt,letterpaper]{report} +\usepackage[top=1in, left=1in, right=1in, bottom=1in]{geometry} \usepackage[pdftex]{graphicx} \DeclareGraphicsExtensions{.pdf,.png,.jpg,.mps,.eps} \usepackage[pdftex]{hyperref} Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-02-27 19:04:07 UTC (rev 641) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-03-04 23:53:10 UTC (rev 642) @@ -7,9 +7,9 @@ The CIShell Platform has been specifically designed around the idea of the algorithm. It is the central and most important concept. Algorithms are fully defined and self-contained bits of execution. They can do many things from data -conversion, data analysis, and can even spawn whole outside programs if it needs -to. Algorithms are very well defined black boxes in that what can come into and -out of the algorithm is specified in each algorithm's metadata. Other than that, +conversion, data analysis, and can even spawn whole outside programs if needed. +Algorithms are very well defined black boxes in that what can come into and out +of the algorithm is specified in each algorithm's metadata. Other than that, CIShell makes no attempt to understand the algorithm. To be recognized by CIShell, an \class{AlgorithmFactory} must be registered with @@ -54,10 +54,10 @@ When an algorithm is registered with OSGi's service registry, a dictionary of metadata is provided. Since the algorithm itself is a black box, the metadata is used to provide information about the algorithm. Information such as the format -of each \class{Data} item to be inputted and outputted is provided. In addition -to the mechanics of the algorithms, interesting data such as the authors, label, -urls, and description are provided. This metadata can be searched by anyone using -OSGi's service registry to find relevant algorithms for use. +of each \class{Data} item to be input and output is provided. In addition to the +mechanics of the algorithms, data such as the authors, label, urls, citation +references, and description are provided. This metadata can be searched by anyone +using OSGi's service registry to find relevant algorithms. Each standard metadata element required by the CIShell specification is defined below and in the interface \class{AlgorithmProperty}. It defines each key string @@ -68,7 +68,7 @@ A string that uniquely identifies the algorithm. The service.pid should not change between sessions and only one algorithm with a given service.pid should be available in the service registry at any given time. It is recommended to -use the Java naming scheme including path for this purpose, i.e. +use the Java naming scheme including path for this purpose, i.e., ``org.cishell.my.algorithm.MyAlgorithm''. This metadata element is defined as part of the OSGi Service Platform Core Specification, section 6.1.12.58. @@ -93,8 +93,8 @@ \subsection*{parentage} If this metadata element is used, it defines how the output \class{Data} produced by the algorithm should be arranged. \class{Data} items can be given a parent as -part of their metadata (which qsually means the \class{Data} was derived from the -referenced \class{Data}). If parentage is set to ``default'' then each of the +part of their metadata (which usually means the \class{Data} was derived from +the referenced \class{Data}). If parentage is set to ``default'' then each of the algorithm's outputted \class{Data} items will have their parent \class{Data} item set as the first inputted \class{Data} item (if applicable) by the CIShell-conforming application. If parentage is set to something else or is not @@ -135,7 +135,7 @@ \subsection*{conversion} For converter algorithms, this metadata element specifies if any data is -lossed in the conversion. Possible values are ``lossy'' and ``lossless''. A +lost in the conversion. Possible values are ``lossy'' and ``lossless''. A description of what type of information is lost should be explained in the description. Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex 2008-02-27 19:04:07 UTC (rev 641) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex 2008-03-04 23:53:10 UTC (rev 642) @@ -3,7 +3,11 @@ \subsection*{\textit{Version 1.0}} \label{algConstraints} +\subsection{Introduction} +CIShell algorithms are a generic concept which have many uses. \comments{flesh +out\ldots} + \subsection{Base Algorithm Constraints} All conformant algorithms regardless of type, must adhere to the following @@ -13,7 +17,7 @@ \begin{itemize} \item The algorithm must be a conformant \class{AlgorithmFactory} implementation and properly registered as a service. - \item The algorithm's service metadata must contain a legal ``service.pid''. + \item The algorithm's service metadata must contain a valid ``service.pid''. \end{itemize} \subsubsection*{Optional:} @@ -23,7 +27,7 @@ \item The algorithm's service metadata should have a ``label'' which is a short human-readable name for the algorithm. \item The algorithm's service metadata should have a ``description'' - describing what the algorithm does in more detail. + explaining what the algorithm does in more detail. \item As much of the informational metadata as possible should be provided. This includes ``authors'', ``implementors'', ``integrators'', ``documentation\_url'', ``reference'', ``reference\_url'', and ``written\_in''. @@ -38,12 +42,12 @@ \begin{itemize} \item The algorithm must be a conformant \class{AlgorithmFactory} implementation and properly registered as a service. - \item The algorithm's service metadata must contain a legal ``service.pid''. + \item The algorithm's service metadata must contain a valid ``service.pid''. \item The algorithm's service metadata must have a ``label'' which is a short human-readable name for the algorithm. This is typically used to label an algorithm for an end-user to see. \item The algorithm's service metadata must have a ``description'' - describing what the algorithm does in more detail. + explaining what the algorithm does in more detail. \item The algorithm's service metadata must have a ``menu\_path'' which is simultaneously a classification and a location on a GUI's menubar to place the algorithm in. See section \ref{algMetaData} for how to format a @@ -52,7 +56,9 @@ \subsubsection*{Optional:} \begin{itemize} - + \item If additional user-entered parameters are needed, the algorithm should + provide a \class{MetaTypeProvider} through its AlgorithmFactory's + createParameters method. \item The algorithm's service metadata should have ``remoteable=true'' if it meets the requirements of a remoteable algorithm. \item The algorithm's service metadata should have ``parentage=default'' if @@ -64,7 +70,44 @@ ``documentation\_url'', ``reference'', ``reference\_url'', and ``written\_in''. \end{itemize} +\subsection{Dataset Algorithms} +A dataset algorithm is a custom type of CIShell algorithm for providing +pre-generated data for use in the CIShell Platform. Dataset algorithms act just +like standard algorithms and have a superset of requirements. CIShell +Applications may not even treat them any differently than standard algorithms. A +dataset algorithm has the following constraints: + +\subsubsection*{Required:} +\begin{itemize} + \item The algorithm must be a conformant \class{AlgorithmFactory} + implementation and properly registered as a service. + \item The algorithm's service metadata must contain a valid ``service.pid''. + \item The algorithm's service metadata must have a ``label'' which is a + short human-readable name for the dataset being provided. This is typically + used to label a dataset for an end-user to see. + \item The algorithm's service metadata must have a ``description'' + explaining what the dataset is in more detail. + \item The algorithm's service metadata must have a ``menu\_path'' which is + simultaneously a classification and a location on a GUI's menubar to place + the dataset in. Datasets will typically be in ``File/Datasets/additions'' + See section \ref{algMetaData} for how to format a ``menu\_path''. + \item The algorithm's service metadata must have ``type=dataset''. + \item The algorithm's service metadata must have ``in\_data=null'' or + not defined at all. + \item The algorithm's service metadata must have at least one data item set + as its ``out\_data''. +\end{itemize} + +\subsubsection*{Optional:} +\begin{itemize} + \item The algorithm's service metadata should have ``remoteable=true'' if it + meets the requirements of a remoteable algorithm. + \item As much of the informational metadata as possible should be + provided. This includes ``authors'', ``implementors'', ``integrators'', + ``documentation\_url'', ``reference'', and ``reference\_url''. +\end{itemize} + \subsection{Converter Algorithms} \label{converterAlg} @@ -80,22 +123,26 @@ \item The algorithm must take in a single \class{Data} item and convert the item, producing a single \class{Data} item. This must be reflected in the algorithm's service metadata where ``in\_data'' and ``out\_data'' have only - one format each. - \item The algorithm's service metadata must contain a legal ``service.pid''. + one data item each. + \item The algorithm's service metadata must contain a valid ``service.pid''. \item The algorithm's service metadata must have ``type=converter''. \item The algorithm's service metadata must have ``conversion=lossy'' if data is lost during conversion or ``conversion=lossless'' if not. + \item The algorithm must not require any parameters. The + \class{AlgorithmFactory}'s createParameters method will never be called and + the \class{Dictionary} passed to the createAlgorithm method will always be + empty. \end{itemize} \subsubsection*{Optional:} -\begin{itemize} +\begin{itemize}an \item The algorithm's service metadata should have ``remoteable=true'' if it meets the requirements of a remoteable algorithm. \item The algorithm's service metadata should have a ``label'' which is a short human-readable name for the converter, usually with the common name of the input data format and output data format. \item The algorithm's service metadata should have a ``description'' - describing the conversion in more detail, especially what data may be lossed + explaining the conversion in more detail, especially what data may be lossed if ``conversion=lossy''. \item The algorithm's service metadata should have ``implementers'' filled in accordingly. @@ -120,15 +167,19 @@ item producing a single \class{Data} item (with the same data, but changed format) or \class{null} if the file being validated is not of the right type. This must be reflected in the algorithm's service metadata where - ``in\_data'' and ``out\_data'' have only one format each with one containing - a ``file:'' format and the other a ``file-ext:'' depending on the direction - of validation. + ``in\_data'' and ``out\_data'' have only one data item each with one + containing a ``file:'' format and the other a ``file-ext:'' depending on the + direction of validation. \item The algorithm must not alter the data. Its only purpose is to validate the proposed incoming or outgoing file. - \item The algorithm's service metadata must contain a legal ``service.pid''. + \item The algorithm's service metadata must contain a valid ``service.pid''. \item The algorithm's service metadata must have ``type=validator''. \item The algorithm's service metadata must have a ``label'' which is the common name of the data format being validated. + \item The algorithm must not require any parameters. The + \class{AlgorithmFactory}'s createParameters method will never be called and + the \class{Dictionary} passed to the createAlgorithm method will always be + empty. \end{itemize} \subsubsection*{Optional:} Modified: trunk/core/org.cishell.docs/src/specification/tex/data.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/data.tex 2008-02-27 19:04:07 UTC (rev 641) +++ trunk/core/org.cishell.docs/src/specification/tex/data.tex 2008-03-04 23:53:10 UTC (rev 642) @@ -9,9 +9,9 @@ a mime type if it is a \class{java.io.File}. The mime type corresponds to the file's data type and has the following form - ``file:\textit{mime/type}''. Note that if no official mime type is available for a file format, a made up one can -be used, but must still conform to how mime types are constructed. See RFCs 3023 -and 4288 for more information on how to construct MIME types. Finally, the -properties help describe the data. The label to give the data, the parent -\class{Data} object from which it was derived from, and a coarse data type can +be used, but must still conform to how mime types are constructed. See RFCs +3023\footnote{http://tools.ietf.org/html/rfc3023} and +4288\footnote{http://tools.ietf.org/html/rfc4288} for more information on how to +construct MIME types. Finally, the properties help describe the data. The label to give the data, the parent \class{Data} object from which it was derived from, and a coarse data type can all be defined in the \class{Data}'s properties. See the \class{DataProperty} interface definition for specific properties to use. Modified: trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex 2008-02-27 19:04:07 UTC (rev 641) +++ trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex 2008-03-04 23:53:10 UTC (rev 642) @@ -3,11 +3,11 @@ \section{Introduction} A conscious design decision was made for CIShell not to enforce a central data -model/format that all algorithms had to work with. Instead, an algorithm -expresses in its service metadata for each data item coming into and out of the -algorithm what the format of the data is. It is the job of the code calling the -algorithm to get the data in the right format before calling the algorithm. The -Data Conversion Service is used here to simplify the process of converting data. +model/format that all algorithms have to work with. Instead, an algorithm +expresses the data format of each data item coming into and out of the algorithm +in its service metadata. It is the job of the code calling the algorithm to get +the data in the right format before calling the algorithm. The Data Conversion +Service is used here to simplify the process of converting data. \subsection{Entities} Modified: trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex 2008-02-27 19:04:07 UTC (rev 641) +++ trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex 2008-03-04 23:53:10 UTC (rev 642) @@ -7,7 +7,7 @@ The Data Manager Service is an optional service designed for application developers to have a central \class{Data} management system. Algorithm developers may use this too if they wish, but it is not guaranteed to be -available accross all CIShell-compliant systems. +available across all CIShell-compliant systems. \subsection{Entities} Modified: trunk/core/org.cishell.docs/src/specification/tex/framework.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-02-27 19:04:07 UTC (rev 641) +++ trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-03-04 23:53:10 UTC (rev 642) @@ -46,7 +46,7 @@ \item \textit{BasicData} - A simple implementation of the \class{Data} interface. \item \textit{DataProperty} - The interface which provides string constants - for \class{Data}'s metadata. + for \class{Data} metadata. \item \textit{CIShellContext} - The interface for a class to be passed in to an \class{AlgorithmFactory} for use in gaining access to standard CIShell services. Modified: trunk/core/org.cishell.docs/src/specification/tex/introduction.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-02-27 19:04:07 UTC (rev 641) +++ trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-03-04 23:53:10 UTC (rev 642) @@ -7,8 +7,8 @@ while retaining their intellectual rights after distribution; (2) data holders to easily disseminate their data for use by others; (3) application developers to design applications from custom sets of algorithms and datasets that interoperate -seamlessly; and finally (4) researchers, educators, and practitioners to use -existing datasets and algorithms to further science. +seamlessly; and finally (4) end-users to use existing datasets and algorithms +effectively. \section{CIShell Platform Overview} @@ -16,42 +16,53 @@ services for algorithm developers, and services for application developers. Much of the platform uses metadata and is fully defined. -\section{What is New} +%The next version should have this section. +%\section{What is New} -This is the first release of the CIShell Platform Specification. Future -versions will strive for backwards compatibility. +%This is the first release of the CIShell Platform Specification. Future +%versions will strive for backwards compatibility. \section{Reader Level} This specification is written for the following audiences: \begin{itemize} - \item Java Algorithm developers - \item Non-Java Algorithm developers + \item Java algorithm developers + \item Non-Java algorithm developers \item Framework and system service developers (system developers) \item Application developers building on CIShell \end{itemize} The CIShell Specifications assume that the reader has at least one year of practical experience in writing Java programs. CIShell is built to run on the -OSGi Service Platform Release 4 and thus a working knowledge of OSGi is expected. -OSGi (and thus CIShell) is highly dynamic and must be taken into consideration +OSGi Service Platform Release 4\footnote{http://www.osgi.org/Release4/Download} +and thus a working knowledge of OSGi is expected. OSGi (and thus CIShell) is highly dynamic and must be taken into consideration when developing anything on CIShell. -Non-Java Algorithm developers may not need to know any Java and should be mainly +Non-Java algorithm developers may not need to know any Java and should be mainly concerned with the metadata definitions for algorithms and data. They may also need to be aware of OSGi and the other services CIShell provides, but more than likely will not directly interact with them. \section{Conventions and Terms} -The conventions and terms are exactly the same as from OSGi's Core +In this specification, algorithms are referred to in three different contexts. An +abstract algorithm, is the pure idea of the algorithm with no actual source code. +It is a series of steps sometimes put into psuedo-code and often published in +academic journals. An \class{Algorithm} with a capital A refers the Java class +called Algorithm. And finally, an algorithm with a lowercase A refers to the +bundle of code that encompasses an algorithm written in code to work with the +CIShell Platform. This includes the implementation of \class{AlgorithmFactory} +and \class{Algorithm}, and the metadata, files, and other code that go into an +OSGi bundle. + +All other conventions and terms are exactly the same as from OSGi's Core Specification, section 1.4. \section{Version Information} This is the first release of the CIShell Platform Specification. All packages are at 1.0 for this release. Subsequent releases may increase the version number of -specific packages, if changes have been made. +specific packages if changes have been made. \begin{table}[h!] \begin{tabular}{l l l} @@ -65,8 +76,6 @@ 1.0 \\ Log Service Specification & org.osgi.service.log & Version 1.3 \\ Preferences Service Specification & org.osgi.service.prefs & Version 1.1 \\ -GUI Preferences Service Specification & org.cishell.service.\comments{TBD} & -Version 1.0 \\ Data Manager Application Service Specification & org.cishell.app.datamanager & Version 1.0 \\ Scheduler Application Service Specification & org.cishell.app.scheduler & Modified: trunk/core/org.cishell.docs/src/specification/tex/logservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/logservice.tex 2008-02-27 19:04:07 UTC (rev 641) +++ trunk/core/org.cishell.docs/src/specification/tex/logservice.tex 2008-03-04 23:53:10 UTC (rev 642) @@ -8,8 +8,8 @@ built on CIShell a standard logging sytem to use. This service has not been extended or modified. More information about the \class{LogService} is available in the OSGi Service Platform Service Compendium Specification R4, section 101 -under ``Log Service Specification''. Recommend output per log level for CIShell -algorithms are listed in table \ref{table:logLevels}. +under ``Log Service Specification.'' Recommended output per log level for +CIShell algorithms are listed in table \ref{table:logLevels}. \begin{table}[htb!] \begin{center} @@ -18,10 +18,10 @@ LOG\_DEBUG & Used for problem determination and may be irrelevent to anyone but the algorithm developer. \\ LOG\_ERROR & Indicates a problem occurred while the algorithm was executing. -Indicators of possible fixes should be outputted to this level along with +Indicators of possible fixes should be output to this level along with relevent information describing what went wrong, if possible. \\ LOG\_INFO & Used for providing information about and while the algorithm is -executing and does not indicate a problem. \\ +executing. It does not indicate a problem. \\ LOG\_WARNING & Indicates that the algorithm will still be executed, but that outputs may not be what was expected. This is often in response to illogical, but still valid user inputs. Modified: trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex 2008-02-27 19:04:07 UTC (rev 641) +++ trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex 2008-03-04 23:53:10 UTC (rev 642) @@ -4,21 +4,22 @@ implementation. In addition to the base OSGi implementation, several optional OSGi services are required to be available in a fully compliant CIShell implementation. Each additional required service is described in the OSGi -Service Platform Service Compendium R4. +Service Platform Service Compendium +R4\footnote{http://www.osgi.org/Release4/Download}. \subsection*{Required Services} \begin{description} \item[Metatype Service] as described in OSGi section 105 ``Metatype Service - Specification'', this service defines the \class{MetaTypeProvider} class used + Specification,'' this service defines the \class{MetaTypeProvider} class used for specifying user interfaces in CIShell. In addition, it provides an XML format for automatically generating \class{MetaTypeProvider}s and a service, \class{MetaTypeService}, for harvesting them for use by bundles. \item[Log Service] as described in OSGi section 101 ``Log Service - Specification'', this service is used as a universal logging system for + Specification,'' this service is used as a universal logging system for algorithms and services. See chapter \ref{logService} for more details. \item[Preferences Service] as described in OSGi section 106 ``Preferences - Service Specification'', this service is used as a universal preference storage - system for algorithms and services. See chapter \ref{preferencesService} for + Service Specification,'' this service is used as a universal preference + storage system for algorithms and services. See chapter \ref{preferencesService} for more details. \item[Configuration Admin Service] \comments{More details when the expanded prefs spec is done\ldots} @@ -28,6 +29,6 @@ \begin{description} \item[Declarative Services] as described in OSGi section 112 ``Declarative - Services Specification'', this service can b... [truncated message content] |
From: <bh...@us...> - 2008-03-07 21:56:26
|
Revision: 648 http://cishell.svn.sourceforge.net/cishell/?rev=648&view=rev Author: bh2 Date: 2008-03-07 13:56:18 -0800 (Fri, 07 Mar 2008) Log Message: ----------- * cautioned readers on ambiguous in_data statements * added parameters_pid key for algorithms with custom pids for their parameters OCD * moved createParameters out of AF to ParameterMutator * require metatype service use for algorithm user-input parameters * added PARAMETERS_PID to AlgorithmProperty * added TABLE_TYPE to DataProperty * bumped to version 1.0 (though still not done yet, of course) * changed the build system's output of the spec's name to match what is published on cishell.org/the javadocs * updated the images that used to refer to createParameters. The images still need more clarity I think. Still TODO: * clean up/clarify/refine the text and images of both the spec and the javadocs Modified Paths: -------------- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmFactory.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmProperty.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/DataProperty.java trunk/core/org.cishell.docs/build.properties trunk/core/org.cishell.docs/src/img/algExecWorkflow.dia trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps trunk/core/org.cishell.docs/src/img/algExecWorkflow.pdf trunk/core/org.cishell.docs/src/img/cishellInteraction.dia trunk/core/org.cishell.docs/src/img/cishellInteraction.eps trunk/core/org.cishell.docs/src/img/cishellInteraction.pdf trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex trunk/core/org.cishell.docs/src/specification/tex/framework.tex trunk/core/org.cishell.docs/src/specification/tex/introduction.tex trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex Added Paths: ----------- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ParameterMutator.java Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmFactory.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmFactory.java 2008-03-06 18:05:47 UTC (rev 647) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmFactory.java 2008-03-07 21:56:18 UTC (rev 648) @@ -17,35 +17,28 @@ import org.cishell.framework.CIShellContext; import org.cishell.framework.data.Data; -import org.osgi.service.metatype.MetaTypeProvider; +import org.osgi.service.metatype.MetaTypeService; /** - * A class for creating {@link Algorithm}s. This class provides the - * parameters needed by its associated <code>Algorithm</code> on demand and when - * given correct data, will create an <code>Algorithm</code> that can be executed. + * A service interface for creating {@link Algorithm}s to be executed. * <br> * An algorithm developer must create an implementation of this interface and * register it (along with some standard metadata about the algorithm, defined * in the {@link AlgorithmProperty} class) in the OSGi service registry. + * <br> + * If the algorithm requires input in addition to the raw data provided, a + * {@link MetaTypeProvider} must be published to OSGi's {@link MetaTypeService} + * (usually through a METADATA.XML file in the algorithm's bundle). + * <br> + * See the <a href="http://cishell.org/dev/docs/spec/cishell-spec-1.0.pdf"> + * CIShell Specification 1.0</a> for documentation on the full requirements for + * algorithm creation. * * @author Bruce Herr (bh...@bh...) */ public interface AlgorithmFactory { + /** - * Creates a set of parameter definitions that specify what parameters are - * needed in order to run its associated Algorithm - * - * @param data An optional argument, the Data array that will be given to - * this class to create an Algorithm with the createAlgorithm - * method. Clients that don't know the Data array that is going - * to be used ahead of time can give a <code>null</code> value. - * @return An OSGi {@link MetaTypeProvider} that defines the parameters - * needed by the Algorithm this class creates. May be - * <code>null</code> if no parameters are needed. - */ - public MetaTypeProvider createParameters(Data[] data); - - /** * Creates an {@link Algorithm} to be executed * * @param data The data to be given to the Algorithm to process. @@ -54,7 +47,8 @@ * dictionary (the 'in_data' key) when registered as a * service in OSGi. * @param parameters A set of key-value pairs that were created based on - * the parameters given by the createParameters method + * the associated input specification published to the + * {@link MetaTypeService} * @param context The context by which the Algorithm can gain access to * standard CIShell services * @return An <code>Algorithm</code> primed for execution Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmProperty.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmProperty.java 2008-03-06 18:05:47 UTC (rev 647) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/AlgorithmProperty.java 2008-03-07 21:56:18 UTC (rev 648) @@ -28,13 +28,16 @@ public static final String OUT_DATA = "out_data"; public static final String NULL_DATA = "null"; + public static final String PARAMETERS_PID = "parameters_pid"; + public static final String PARENTAGE = "parentage"; public static final String DEFAULT_PARENTAGE="default"; public static final String ALGORITHM_TYPE = "type"; public static final String TYPE_CONVERTER = "converter"; public static final String TYPE_VALIDATOR = "validator"; - + public static final String TYPE_DATASET = "dataset"; + public static final String REMOTEABLE = "remoteable"; public static final String REMOTE = "remote"; @@ -58,11 +61,4 @@ public static final String REFERENCE = "reference"; public static final String REFERENCE_URL = "reference_url"; public static final String WRITTEN_IN = "written_in"; - - - - //Undocumented/possibly-unnecessary properties - public static final String TYPE_ALGORITHM = "algorithm"; - public static final String TYPE_DATASET = "dataset"; - public static final String METATYPE_ID = "metatype-id"; } Added: branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ParameterMutator.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ParameterMutator.java (rev 0) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/algorithm/ParameterMutator.java 2008-03-07 21:56:18 UTC (rev 648) @@ -0,0 +1,46 @@ +/* **************************************************************************** + * CIShell: Cyberinfrastructure Shell, An Algorithm Integration Framework. + * + * All rights reserved. This program and the accompanying materials are made + * available under the terms of the Apache License v2.0 which accompanies + * this distribution, and is available at: + * http://www.apache.org/licenses/LICENSE-2.0.html + * + * Created on Mar 7, 2008 at Indiana University. + * + * Contributors: + * Indiana University - + * ***************************************************************************/ +package org.cishell.framework.algorithm; + +import org.cishell.framework.data.Data; +import org.osgi.service.metatype.AttributeDefinition; +import org.osgi.service.metatype.ObjectClassDefinition; + +/** + * An additional interface an {@link AlgorithmFactory} can implement that allows + * for adding, modifying, or removing input parameters before being shown to the + * end-user for input. This interface is often implemented by algorithms that + * wish to customize the input UI based on the actual input data. + * + * @author Bruce Herr (bh...@bh...) + */ +public interface ParameterMutator { + + /** + * Adds, modifies, or removes {@link Algorithm} parameters + * ({@link AttributeDefinition}s) from a given {@link ObjectClassDefinition} + * returning either the same (if no changes are made) input or a new, + * mutated version of the input + * + * @param data An optional argument, the Data array that will be given to + * this class to create an Algorithm with the createAlgorithm + * method. Applications that don't know the Data array that is going + * to be used ahead of time can give a <code>null</code> value. + * @param parameters A set of AttributeDefinitions which define the + * algorithm's input parameters + * @return An OSGi {@link ObjectClassDefinition} that defines the parameters + * needed by the Algorithm this class creates + */ + public ObjectClassDefinition mutateParameters(Data[] data, ObjectClassDefinition parameters); +} Modified: branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/DataProperty.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/DataProperty.java 2008-03-06 18:05:47 UTC (rev 647) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/data/DataProperty.java 2008-03-07 21:56:18 UTC (rev 648) @@ -66,6 +66,9 @@ /** Says this data model is abstractly a network */ public static String NETWORK_TYPE = "Network"; + + /** Says this data model is abstractly a table */ + public static String TABLE_TYPE = "Table"; /** Says this data model is abstractly a tree */ public static String TREE_TYPE = "Tree"; Modified: trunk/core/org.cishell.docs/build.properties =================================================================== --- trunk/core/org.cishell.docs/build.properties 2008-03-06 18:05:47 UTC (rev 647) +++ trunk/core/org.cishell.docs/build.properties 2008-03-07 21:56:18 UTC (rev 648) @@ -1,4 +1,4 @@ -version = 0.8 +version = 1.0 build.dir = build api.tex = api.tex @@ -16,9 +16,9 @@ spec.tex = main.tex spec.dir = src/specification -spec.html.dir = ${build.dir}/cishell-specification-${version} +spec.html.dir = ${build.dir}/cishell-spec-${version} spec.tmp.pdf = ${spec.dir}/main.pdf -spec.final.pdf = ${build.dir}/cishell-specification-${version}.pdf +spec.final.pdf = ${build.dir}/cishell-spec-${version}.pdf guide.tex = main.tex guide.dir = src/dev_guide Modified: trunk/core/org.cishell.docs/src/img/algExecWorkflow.dia =================================================================== (Binary files differ) Modified: trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps =================================================================== --- trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps 2008-03-06 18:05:47 UTC (rev 647) +++ trunk/core/org.cishell.docs/src/img/algExecWorkflow.eps 2008-03-07 21:56:18 UTC (rev 648) @@ -1,11 +1,11 @@ %!PS-Adobe-2.0 EPSF-2.0 -%%Title: /home/bherr/cishell-workspace/org.cishell.docs/src/img/algExecWorkflow.dia -%%Creator: Dia v0.95 -%%CreationDate: Wed Jan 9 10:58:56 2008 +%%Title: /home/bherr/workspace/org.cishell.docs/src/img/algExecWorkflow.dia +%%Creator: Dia v0.96.1 +%%CreationDate: Fri Mar 7 16:33:37 2008 %%For: bherr %%Orientation: Portrait %%Magnification: 1.0000 -%%BoundingBox: 0 0 1146 381 +%%BoundingBox: 0 0 1146 358 %%BeginSetup %%EndSetup %%EndComments @@ -341,20 +341,26 @@ currentdict end definefont pop 28.346000 -28.346000 scale --3.052330 -20.889800 translate +-3.030488 -20.889800 translate %%EndProlog 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 14.958000 16.044000 m 14.958000 18.244000 l 22.508000 18.244000 l 22.508000 16.044000 l f +n 14.913806 16.044000 m 14.913806 18.244000 l 22.561306 18.244000 l 22.561306 16.044000 l f 0.000000 0.000000 0.000000 srgb -n 14.958000 16.044000 m 14.958000 18.244000 l 22.508000 18.244000 l 22.508000 16.044000 l cp s +n 14.913806 16.044000 m 14.913806 18.244000 l 22.561306 18.244000 l 22.561306 16.044000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 18.733000 ex sub 16.694000 m gs 1 -1 sc sh gr +(<<interface>>) 16.462556 16.546500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(AlgorithmFactory) dup sw 2 div 18.733000 ex sub 17.694000 m gs 1 -1 sc sh gr +(AlgorithmFactory) 15.163806 17.514000 m +dup sw 7.147500 exch sub +16 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb @@ -362,19 +368,34 @@ 0.000000 0.000000 0.000000 srgb n 27.318000 16.045000 m 27.318000 18.245000 l 32.368000 18.245000 l 32.368000 16.045000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 29.843000 ex sub 16.695000 m gs 1 -1 sc sh gr +(<<interface>>) 27.568000 16.547500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(Algorithm) dup sw 2 div 29.843000 ex sub 17.695000 m gs 1 -1 sc sh gr +(Algorithm) 27.803000 17.515000 m +dup sw 4.080000 exch sub +9 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 27.273500 17.145000 m 23.346400 17.145000 l 23.346400 17.144000 l 22.558300 17.144000 l s +n 27.273544 17.145000 m 23.346400 17.145000 l 23.346400 17.144000 l 22.611078 17.144000 l s /Courier-latin1 ff 0.560000 scf sf -(creates) 23.446400 16.994500 m gs 1 -1 sc sh gr -n 25.996400 16.994500 m 25.996400 16.594500 l 26.396400 16.794500 l ef -(1) dup sw 27.073500 ex sub 16.995000 m gs 1 -1 sc sh gr -(1) 22.758300 16.994000 m gs 1 -1 sc sh gr +(creates) 23.446400 16.864500 m +dup sw 2.450000 exch sub +7 div exch 0.0 exch + gs 1 -1 sc ashow gr +n 25.996400 17.004500 m 25.996400 16.604500 l 26.396400 16.804500 l ef +(1) 26.723544 16.865000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 22.811078 16.864000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb @@ -382,19 +403,31 @@ 0.000000 0.000000 0.000000 srgb n 4.652850 16.044700 m 4.652850 18.244700 l 9.702850 18.244700 l 9.702850 16.044700 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 7.177850 ex sub 16.694700 m gs 1 -1 sc sh gr +(<<interface>>) 4.902850 16.547200 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(Data) dup sw 2 div 7.177850 ex sub 17.694700 m gs 1 -1 sc sh gr +(Data) 6.207850 17.514700 m +dup sw 1.940000 exch sub +4 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 3.102330 18.639800 m 3.102330 20.839800 l 9.702330 20.839800 l 9.702330 18.639800 l f +n 3.102330 18.639800 m 3.102330 20.839800 l 9.672330 20.839800 l 9.672330 18.639800 l f 0.000000 0.000000 0.000000 srgb -n 3.102330 18.639800 m 3.102330 20.839800 l 9.702330 20.839800 l 9.702330 18.639800 l cp s +n 3.102330 18.639800 m 3.102330 20.839800 l 9.672330 20.839800 l 9.672330 18.639800 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 6.402330 ex sub 19.289800 m gs 1 -1 sc sh gr +(<<interface>>) 4.112330 19.142300 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(CIShellContext) dup sw 2 div 6.402330 ex sub 20.289800 m gs 1 -1 sc sh gr +(CIShellContext) 3.352330 20.109800 m +dup sw 6.070000 exch sub +14 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd [] 0 sd @@ -406,20 +439,34 @@ [] 0 sd 0 slj 0 slc -n 9.702330 19.739800 m 11.446400 19.739800 l 11.446400 17.144000 l 14.958000 17.144000 l s +n 9.702330 19.739800 m 11.446400 19.739800 l 11.446400 17.144000 l 14.913806 17.144000 l s /Courier-latin1 ff 0.560000 scf sf -(1) 9.902330 19.589800 m gs 1 -1 sc sh gr -(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr +(1) 9.902330 19.459800 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 14.363806 16.864000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 9.702850 17.144700 m 11.777300 17.144700 l 11.777300 17.144000 l 14.958000 17.144000 l s -/Courier-latin1 ff 0.560000 scf sf -(given) 11.877300 16.994350 m gs 1 -1 sc sh gr -n 13.727300 16.994350 m 13.727300 16.594350 l 14.127300 16.794350 l ef -(0..n) 9.902850 16.994700 m gs 1 -1 sc sh gr -(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr +n 9.702850 17.144700 m 11.777300 17.144700 l 11.777300 17.144000 l 14.913806 17.144000 l s +(given) 11.877300 16.864350 m +dup sw 1.750000 exch sub +5 div exch 0.0 exch + gs 1 -1 sc ashow gr +n 13.727300 17.004350 m 13.727300 16.604350 l 14.127300 16.804350 l ef +(0..n) 9.902850 16.864700 m +dup sw 1.400000 exch sub +4 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 14.363806 16.864000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb @@ -427,116 +474,149 @@ 0.000000 0.000000 0.000000 srgb n 4.651040 13.330300 m 4.651040 15.530300 l 9.701040 15.530300 l 9.701040 13.330300 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 7.176040 ex sub 13.980300 m gs 1 -1 sc sh gr +(<<interface>>) 4.901040 13.832800 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(Dictionary) dup sw 2 div 7.176040 ex sub 14.980300 m gs 1 -1 sc sh gr +(Dictionary) 5.057290 14.800300 m +dup sw 4.237500 exch sub +10 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 9.751110 14.430300 m 11.452300 14.430300 l 11.452300 17.144000 l 14.958000 17.144000 l s +n 9.751088 14.430300 m 11.452300 14.430300 l 11.452300 17.144000 l 14.913806 17.144000 l s /Courier-latin1 ff 0.560000 scf sf -(1) 9.951110 14.280300 m gs 1 -1 sc sh gr -(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr +(1) 9.951088 14.150300 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 14.363806 16.864000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 38.373000 16.043700 m 38.373000 18.243700 l 43.423000 18.243700 l 43.423000 16.043700 l f +n 38.337645 16.061378 m 38.337645 18.261378 l 43.387645 18.261378 l 43.387645 16.061378 l f 0.000000 0.000000 0.000000 srgb -n 38.373000 16.043700 m 38.373000 18.243700 l 43.423000 18.243700 l 43.423000 16.043700 l cp s +n 38.337645 16.061378 m 38.337645 18.261378 l 43.387645 18.261378 l 43.387645 16.061378 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 40.898000 ex sub 16.693700 m gs 1 -1 sc sh gr +(<<interface>>) 38.587645 16.563878 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(Data) dup sw 2 div 40.898000 ex sub 17.693700 m gs 1 -1 sc sh gr +(Data) 39.892645 17.531378 m +dup sw 1.940000 exch sub +4 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 38.323900 17.143700 m 33.196400 17.143700 l 33.196400 17.145000 l 32.368000 17.145000 l s +n 38.317212 17.161378 m 33.196400 17.161378 l 33.196400 17.145000 l 32.368000 17.145000 l s /Courier-latin1 ff 0.560000 scf sf -(creates) 33.296400 16.994350 m gs 1 -1 sc sh gr -n 35.846400 16.994350 m 35.846400 16.594350 l 36.246400 16.794350 l ef -(0..n) dup sw 38.123900 ex sub 16.993700 m gs 1 -1 sc sh gr -(1) 32.568000 16.995000 m gs 1 -1 sc sh gr +(creates) 33.296400 16.873189 m +dup sw 2.450000 exch sub +7 div exch 0.0 exch + gs 1 -1 sc ashow gr +n 35.846400 17.013189 m 35.846400 16.613189 l 36.246400 16.813189 l ef +(0..n) 36.717212 16.881378 m +dup sw 1.400000 exch sub +4 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 32.568000 16.865000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 14.842100 7.525020 m 14.842100 9.725020 l 22.392100 9.725020 l 22.392100 7.525020 l f +n 3.080488 8.325020 m 3.080488 10.525020 l 10.580488 10.525020 l 10.580488 8.325020 l f 0.000000 0.000000 0.000000 srgb -n 14.842100 7.525020 m 14.842100 9.725020 l 22.392100 9.725020 l 22.392100 7.525020 l cp s +n 3.080488 8.325020 m 3.080488 10.525020 l 10.580488 10.525020 l 10.580488 8.325020 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 18.617100 ex sub 8.175020 m gs 1 -1 sc sh gr +(<<interface>>) 4.555488 8.827520 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(AlgorithmFactory) dup sw 2 div 18.617100 ex sub 9.175020 m gs 1 -1 sc sh gr +(MetaTypeService) 3.330488 9.795020 m +dup sw 7.000000 exch sub +15 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 27.902100 7.526020 m 27.902100 9.726020 l 35.802100 9.726020 l 35.802100 7.526020 l f +n 16.052100 8.326020 m 16.052100 10.526020 l 24.019600 10.526020 l 24.019600 8.326020 l f 0.000000 0.000000 0.000000 srgb -n 27.902100 7.526020 m 27.902100 9.726020 l 35.802100 9.726020 l 35.802100 7.526020 l cp s +n 16.052100 8.326020 m 16.052100 10.526020 l 24.019600 10.526020 l 24.019600 8.326020 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 31.852100 ex sub 8.176020 m gs 1 -1 sc sh gr +(<<interface>>) 17.760850 8.828520 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(MetaTypeProvider) dup sw 2 div 31.852100 ex sub 9.176020 m gs 1 -1 sc sh gr +(MetaTypeProvider) 16.302100 9.796020 m +dup sw 7.467500 exch sub +16 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 27.852214 8.626020 m 23.434100 8.626020 l 23.434100 8.625020 l 22.442123 8.625020 l s +n 16.002904 9.426020 m 11.584100 9.426020 l 11.584100 9.425020 l 10.630708 9.425020 l s /Courier-latin1 ff 0.560000 scf sf -(provides) 23.534100 8.475520 m gs 1 -1 sc sh gr -n 26.434100 8.475520 m 26.434100 8.075520 l 26.834100 8.275520 l ef -(1) dup sw 27.652214 ex sub 8.476020 m gs 1 -1 sc sh gr -(1) 22.642123 8.475020 m gs 1 -1 sc sh gr +(provides) 11.684100 9.145520 m +dup sw 2.800000 exch sub +8 div exch 0.0 exch + gs 1 -1 sc ashow gr +n 14.584100 9.285520 m 14.584100 8.885520 l 14.984100 9.085520 l ef +(1) 15.452904 9.146020 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 10.830708 9.145020 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd -1.000000 1.000000 1.000000 srgb -n 4.595000 7.525000 m 4.595000 9.725000 l 9.645000 9.725000 l 9.645000 7.525000 l f -0.000000 0.000000 0.000000 srgb -n 4.595000 7.525000 m 4.595000 9.725000 l 9.645000 9.725000 l 9.645000 7.525000 l cp s -/Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 7.120000 ex sub 8.175000 m gs 1 -1 sc sh gr -/Helvetica-Bold-latin1 ff 0.700000 scf sf -(Data) dup sw 2 div 7.120000 ex sub 9.175000 m gs 1 -1 sc sh gr -0.100000 slw [] 0 sd -[] 0 sd 0 slj 0 slc -n 22.510300 8.794320 m 21.415600 9.834120 l 22.509600 9.834120 l ef -n 22.510300 8.794320 m 21.415600 9.834120 l 22.509600 9.834120 l cp s +n 10.660300 9.594320 m 9.565600 10.634120 l 10.659600 10.634120 l ef +n 10.660300 9.594320 m 9.565600 10.634120 l 10.659600 10.634120 l cp s 0.100000 slw [] 0 sd -0 slj -0 slc -n 9.645000 8.625000 m 11.534100 8.625000 l 11.534100 8.625020 l 14.842100 8.625020 l s -/Courier-latin1 ff 0.560000 scf sf -(given) 11.634100 8.475010 m gs 1 -1 sc sh gr -n 13.484100 8.475010 m 13.484100 8.075010 l 13.884100 8.275010 l ef -(0..n) 9.845000 8.475000 m gs 1 -1 sc sh gr -(1) dup sw 14.642100 ex sub 8.475020 m gs 1 -1 sc sh gr -0.100000 slw -[] 0 sd 1.000000 1.000000 1.000000 srgb -n 37.470200 7.774310 m 42.670200 7.774310 l 43.270200 8.374310 l 43.270200 9.474310 l 37.470200 9.474310 l ef +n 26.920200 8.574310 m 32.120200 8.574310 l 32.720200 9.174310 l 32.720200 10.274310 l 26.920200 10.274310 l ef 0.000000 0.000000 0.000000 srgb -n 37.470200 7.774310 m 42.670200 7.774310 l 43.270200 8.374310 l 43.270200 9.474310 l 37.470200 9.474310 l cp s +n 26.920200 8.574310 m 32.120200 8.574310 l 32.720200 9.174310 l 32.720200 10.274310 l 26.920200 10.274310 l cp s 0.050000 slw -n 42.670200 7.774310 m 42.670200 8.374310 l 43.270200 8.374310 l s +n 32.120200 8.574310 m 32.120200 9.174310 l 32.720200 9.174310 l s /Courier-latin1 ff 0.560000 scf sf -(Get User Input) 37.820200 8.974310 m gs 1 -1 sc sh gr +(Get User Input) 27.270200 9.626810 m +dup sw 4.900000 exch sub +14 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 35.852423 8.626020 m 37.201100 8.626020 l 37.201100 8.624310 l 37.420059 8.624310 l s +n 24.069652 9.426020 m 25.351100 9.426020 l 25.351100 9.424310 l 26.878624 9.424310 l s /Courier-latin1 ff 0.560000 scf sf 0.100000 slw [] 0 sd 0 slj 0 slc -n 40.370200 9.522621 m 40.370200 12.650000 l 7.176040 12.650000 l 7.176040 13.330300 l s -/Courier-latin1 ff 0.560000 scf sf -(creates) dup sw 2 div 23.773120 ex sub 12.500000 m gs 1 -1 sc sh gr -n 22.348120 12.500000 m 22.348120 12.100000 l 21.948120 12.300000 l ef +n 29.820200 10.322085 m 29.820200 12.650000 l 7.176040 12.650000 l 7.176040 13.330300 l s +(creates) 17.273120 12.370000 m +dup sw 2.450000 exch sub +7 div exch 0.0 exch + gs 1 -1 sc ashow gr +n 17.073120 12.510000 m 17.073120 12.110000 l 16.673120 12.310000 l ef showpage Modified: trunk/core/org.cishell.docs/src/img/algExecWorkflow.pdf =================================================================== (Binary files differ) Modified: trunk/core/org.cishell.docs/src/img/cishellInteraction.dia =================================================================== (Binary files differ) Modified: trunk/core/org.cishell.docs/src/img/cishellInteraction.eps =================================================================== --- trunk/core/org.cishell.docs/src/img/cishellInteraction.eps 2008-03-06 18:05:47 UTC (rev 647) +++ trunk/core/org.cishell.docs/src/img/cishellInteraction.eps 2008-03-07 21:56:18 UTC (rev 648) @@ -1,11 +1,11 @@ %!PS-Adobe-2.0 EPSF-2.0 -%%Title: /home/bherr/cishell-workspace/org.cishell.docs/src/img/cishellInteraction.dia -%%Creator: Dia v0.95 -%%CreationDate: Tue Jan 8 18:06:57 2008 +%%Title: /home/bherr/workspace/org.cishell.docs/src/img/cishellInteraction.dia +%%Creator: Dia v0.96.1 +%%CreationDate: Fri Mar 7 16:39:20 2008 %%For: bherr %%Orientation: Portrait %%Magnification: 1.0000 -%%BoundingBox: 0 0 1053 520 +%%BoundingBox: 0 0 1055 520 %%BeginSetup %%EndSetup %%EndComments @@ -341,20 +341,26 @@ currentdict end definefont pop 28.346000 -28.346000 scale -3.053557 -24.440110 translate +3.053560 -24.440100 translate %%EndProlog 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 14.958000 16.044000 m 14.958000 18.244000 l 22.508000 18.244000 l 22.508000 16.044000 l f +n 14.958000 16.044000 m 14.958000 18.244000 l 22.605500 18.244000 l 22.605500 16.044000 l f 0.000000 0.000000 0.000000 srgb -n 14.958000 16.044000 m 14.958000 18.244000 l 22.508000 18.244000 l 22.508000 16.044000 l cp s +n 14.958000 16.044000 m 14.958000 18.244000 l 22.605500 18.244000 l 22.605500 16.044000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 18.733000 ex sub 16.694000 m gs 1 -1 sc sh gr +(<<interface>>) 16.506750 16.546500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(AlgorithmFactory) dup sw 2 div 18.733000 ex sub 17.694000 m gs 1 -1 sc sh gr +(AlgorithmFactory) 15.208000 17.514000 m +dup sw 7.147500 exch sub +16 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb @@ -362,220 +368,370 @@ 0.000000 0.000000 0.000000 srgb n 27.468000 16.045000 m 27.468000 18.245000 l 32.518000 18.245000 l 32.518000 16.045000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 29.993000 ex sub 16.695000 m gs 1 -1 sc sh gr +(<<interface>>) 27.718000 16.547500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(Algorithm) dup sw 2 div 29.993000 ex sub 17.695000 m gs 1 -1 sc sh gr +(Algorithm) 27.953000 17.515000 m +dup sw 4.080000 exch sub +9 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 27.417846 17.145000 m 23.876543 17.145000 l 23.876543 17.144000 l 22.556752 17.144000 l s +n 27.417828 17.145000 m 23.876500 17.145000 l 23.876500 17.144000 l 22.655676 17.144000 l s /Courier-latin1 ff 0.560000 scf sf -(Creates) 23.976543 16.994500 m gs 1 -1 sc sh gr -(n) dup sw 27.217846 ex sub 16.995000 m gs 1 -1 sc sh gr -(1) 22.756752 16.994000 m gs 1 -1 sc sh gr +(Creates) 23.976500 16.864500 m +dup sw 2.450000 exch sub +7 div exch 0.0 exch + gs 1 -1 sc ashow gr +(n) 26.867828 16.865000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 22.855676 16.864000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 14.706000 22.187000 m 14.706000 24.387000 l 22.756000 24.387000 l 22.756000 22.187000 l f +n 14.706000 22.187000 m 14.706000 24.387000 l 22.886000 24.387000 l 22.886000 22.187000 l f 0.000000 0.000000 0.000000 srgb -n 14.706000 22.187000 m 14.706000 24.387000 l 22.756000 24.387000 l 22.756000 22.187000 l cp s +n 14.706000 22.187000 m 14.706000 24.387000 l 22.886000 24.387000 l 22.886000 22.187000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 18.731000 ex sub 22.837000 m gs 1 -1 sc sh gr +(<<interface>>) 16.521000 22.689500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(AlgorithmProperty) dup sw 2 div 18.731000 ex sub 23.837000 m gs 1 -1 sc sh gr +(AlgorithmProperty) 14.956000 23.657000 m +dup sw 7.680000 exch sub +17 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 15.658686 9.829000 m 15.658686 12.029000 l 21.808686 12.029000 l 21.808686 9.829000 l f +n 12.958700 10.229000 m 12.958700 12.429000 l 19.143700 12.429000 l 19.143700 10.229000 l f 0.000000 0.000000 0.000000 srgb -n 15.658686 9.829000 m 15.658686 12.029000 l 21.808686 12.029000 l 21.808686 9.829000 l cp s +n 12.958700 10.229000 m 12.958700 12.429000 l 19.143700 12.429000 l 19.143700 10.229000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 18.733686 ex sub 10.479000 m gs 1 -1 sc sh gr +(<<interface>>) 13.776200 10.731500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(DataValidator) dup sw 2 div 18.733686 ex sub 11.479000 m gs 1 -1 sc sh gr +(DataValidator) 13.208700 11.699000 m +dup sw 5.685000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 25.944343 10.154657 m 25.944343 12.354657 l 34.044343 12.354657 l 34.044343 10.154657 l f +n 25.944300 10.154700 m 25.944300 12.354700 l 34.036800 12.354700 l 34.036800 10.154700 l f 0.000000 0.000000 0.000000 srgb -n 25.944343 10.154657 m 25.944343 12.354657 l 34.044343 12.354657 l 34.044343 10.154657 l cp s +n 25.944300 10.154700 m 25.944300 12.354700 l 34.036800 12.354700 l 34.036800 10.154700 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 29.994343 ex sub 10.804657 m gs 1 -1 sc sh gr +(<<interface>>) 27.715550 10.657200 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(ProgressTrackable) dup sw 2 div 29.994343 ex sub 11.804657 m gs 1 -1 sc sh gr +(ProgressTrackable) 26.194300 11.624700 m +dup sw 7.592500 exch sub +17 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 26.740000 6.159000 m 26.740000 8.359000 l 33.990000 8.359000 l 33.990000 6.159000 l f +n 26.740000 6.159000 m 26.740000 8.359000 l 34.097500 8.359000 l 34.097500 6.159000 l f 0.000000 0.000000 0.000000 srgb -n 26.740000 6.159000 m 26.740000 8.359000 l 33.990000 8.359000 l 33.990000 6.159000 l cp s +n 26.740000 6.159000 m 26.740000 8.359000 l 34.097500 8.359000 l 34.097500 6.159000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 30.365000 ex sub 6.809000 m gs 1 -1 sc sh gr +(<<interface>>) 28.143750 6.661500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(ProgressMonitor) dup sw 2 div 30.365000 ex sub 7.809000 m gs 1 -1 sc sh gr +(ProgressMonitor) 26.990000 7.629000 m +dup sw 6.857500 exch sub +15 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 5.011421 17.736731 m 5.011421 19.936731 l 10.061421 19.936731 l 10.061421 17.736731 l f +n 5.011420 17.736700 m 5.011420 19.936700 l 10.061420 19.936700 l 10.061420 17.736700 l f 0.000000 0.000000 0.000000 srgb -n 5.011421 17.736731 m 5.011421 19.936731 l 10.061421 19.936731 l 10.061421 17.736731 l cp s +n 5.011420 17.736700 m 5.011420 19.936700 l 10.061420 19.936700 l 10.061420 17.736700 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 7.536421 ex sub 18.386731 m gs 1 -1 sc sh gr +(<<interface>>) 5.261420 18.239200 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(Data) dup sw 2 div 7.536421 ex sub 19.386731 m gs 1 -1 sc sh gr +(Data) 6.566420 19.206700 m +dup sw 1.940000 exch sub +4 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n -2.927751 17.728768 m -2.927751 19.928768 l 1.672249 19.928768 l 1.672249 17.728768 l f +n -2.927750 17.728800 m -2.927750 19.928800 l 1.679750 19.928800 l 1.679750 17.728800 l f 0.000000 0.000000 0.000000 srgb -n -2.927751 17.728768 m -2.927751 19.928768 l 1.672249 19.928768 l 1.672249 17.728768 l cp s +n -2.927750 17.728800 m -2.927750 19.928800 l 1.679750 19.928800 l 1.679750 17.728800 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<class>>) dup sw 2 div -0.627751 ex sub 18.378768 m gs 1 -1 sc sh gr +(<<class>>) -2.199000 18.231300 m +dup sw 3.150000 exch sub +9 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(BasicData) dup sw 2 div -0.627751 ex sub 19.378768 m gs 1 -1 sc sh gr +(BasicData) -2.677750 19.198800 m +dup sw 4.107500 exch sub +9 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd [] 0 sd 0 slc -n 18.733127 15.995378 m 18.733506 12.564425 l s +n 16.035133 15.993750 m 16.049006 12.915798 l s [] 0 sd 0 slj 0 slc -n 18.733547 12.189425 m 18.983492 12.689453 l 18.733506 12.564425 l 18.483492 12.689398 l ef -n 18.733547 12.189425 m 18.983492 12.689453 l 18.733506 12.564425 l 18.483492 12.689398 l cp s +n 16.050696 12.540802 m 16.298440 13.041924 l 16.049006 12.915798 l 15.798445 13.039670 l ef +n 16.050696 12.540802 m 16.298440 13.041924 l 16.049006 12.915798 l 15.798445 13.039670 l cp s /Courier-latin1 ff 0.560000 scf sf -( Optional) 18.733343 14.036500 m gs 1 -1 sc sh gr +( Optional) 16.043166 14.071375 m +dup sw 3.150000 exch sub +9 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd [] 0 sd 0 slc -n 29.993257 16.017552 m 29.993975 12.868909 l s +n 29.993300 16.017600 m 29.993993 12.868903 l s [] 0 sd 0 slj 0 slc -n 29.994061 12.493909 m 30.243947 12.993966 l 29.993975 12.868909 l 29.743947 12.993852 l ef -n 29.994061 12.493909 m 30.243947 12.993966 l 29.993975 12.868909 l 29.743947 12.993852 l cp s +n 29.994075 12.493903 m 30.243965 12.993958 l 29.993993 12.868903 l 29.743965 12.993848 l ef +n 29.994075 12.493903 m 30.243965 12.993958 l 29.993993 12.868903 l 29.743965 12.993848 l cp s /Courier-latin1 ff 0.560000 scf sf -( Optional) 29.993672 14.199828 m gs 1 -1 sc sh gr +( Optional) 29.993700 14.059800 m +dup sw 3.150000 exch sub +9 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 18.731000 22.187000 m 18.736886 22.187000 l 18.736886 18.244000 l 18.733000 18.244000 l s +n 18.731000 22.187000 m 18.736900 22.187000 l 18.736900 18.244000 l 18.781750 18.244000 l s /Courier-latin1 ff 0.560000 scf sf -(Service Constants) 18.836886 20.065500 m gs 1 -1 sc sh gr +(Service Constants) 18.836900 19.935500 m +dup sw 5.950000 exch sub +17 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 26.700999 7.259000 m 24.447119 7.259000 l 24.447119 11.254657 l 25.944343 11.254657 l s -/Courier-latin1 ff 0.560000 scf sf -(Communications) 24.547119 9.106828 m gs 1 -1 sc sh gr -(1) dup sw 26.500999 ex sub 7.109000 m gs 1 -1 sc sh gr -(1) dup sw 25.744343 ex sub 11.104657 m gs 1 -1 sc sh gr +n 26.701000 7.259000 m 24.447100 7.259000 l 24.447100 11.254700 l 25.944300 11.254700 l s +(Communications) 24.547100 8.976850 m +dup sw 4.900000 exch sub +14 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 26.151000 6.979000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 25.394300 10.974700 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 4.410510 11.796019 m 4.410510 13.996019 l 11.010510 13.996019 l 11.010510 11.796019 l f +n 4.410510 11.796000 m 4.410510 13.996000 l 10.980510 13.996000 l 10.980510 11.796000 l f 0.000000 0.000000 0.000000 srgb -n 4.410510 11.796019 m 4.410510 13.996019 l 11.010510 13.996019 l 11.010510 11.796019 l cp s +n 4.410510 11.796000 m 4.410510 13.996000 l 10.980510 13.996000 l 10.980510 11.796000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 7.710510 ex sub 12.446019 m gs 1 -1 sc sh gr +(<<interface>>) 5.420510 12.298500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(CIShellContext) dup sw 2 div 7.710510 ex sub 13.446019 m gs 1 -1 sc sh gr +(CIShellContext) 4.660510 13.266000 m +dup sw 6.070000 exch sub +14 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 3.336167 6.180019 m 3.336167 8.380019 l 12.086167 8.380019 l 12.086167 6.180019 l f +n 3.336170 6.180020 m 3.336170 8.380020 l 12.048670 8.380020 l 12.048670 6.180020 l f 0.000000 0.000000 0.000000 srgb -n 3.336167 6.180019 m 3.336167 8.380019 l 12.086167 8.380019 l 12.086167 6.180019 l cp s +n 3.336170 6.180020 m 3.336170 8.380020 l 12.048670 8.380020 l 12.048670 6.180020 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<class>>) dup sw 2 div 7.711167 ex sub 6.830019 m gs 1 -1 sc sh gr +(<<class>>) 6.117420 6.682520 m +dup sw 3.150000 exch sub +9 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(LocalCIShellContext) dup sw 2 div 7.711167 ex sub 7.830019 m gs 1 -1 sc sh gr +(LocalCIShellContext) 3.586170 7.650020 m +dup sw 8.212500 exch sub +19 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd [] 0 sd 0 slj 0 slc -n 7.710510 11.258868 m 7.710510 8.828843 l 7.711167 8.828843 l 7.711167 8.429915 l s +n 7.710510 11.258897 m 7.710510 8.828840 l 7.711170 8.828840 l 7.711170 8.429910 l s [] 0 sd 0 slj 0 slc -n 7.710510 11.633868 m 7.460510 11.133868 l 7.710510 11.258868 l 7.960510 11.133868 l ef -n 7.710510 11.633868 m 7.460510 11.133868 l 7.710510 11.258868 l 7.960510 11.133868 l cp s +n 7.710510 11.633897 m 7.460510 11.133897 l 7.710510 11.258897 l 7.960510 11.133897 l ef +n 7.710510 11.633897 m 7.460510 11.133897 l 7.710510 11.258897 l 7.960510 11.133897 l cp s 0.100000 slw [] 0 sd [] 0 sd 0 slj 0 slc -n 22.626177 17.313299 m 21.531491 18.353113 l 22.625491 18.353113 l ef -n 22.626177 17.313299 m 21.531491 18.353113 l 22.625491 18.353113 l cp s +n 22.626200 17.313300 m 21.531500 18.353100 l 22.625500 18.353100 l ef +n 22.626200 17.313300 m 21.531500 18.353100 l 22.625500 18.353100 l cp s 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 4.650942 22.190110 m 4.650942 24.390110 l 10.700942 24.390110 l 10.700942 22.190110 l f +n 4.650940 22.190100 m 4.650940 24.390100 l 10.690940 24.390100 l 10.690940 22.190100 l f 0.000000 0.000000 0.000000 srgb -n 4.650942 22.190110 m 4.650942 24.390110 l 10.700942 24.390110 l 10.700942 22.190110 l cp s +n 4.650940 22.190100 m 4.650940 24.390100 l 10.690940 24.390100 l 10.690940 22.190100 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) dup sw 2 div 7.675942 ex sub 22.840110 m gs 1 -1 sc sh gr +(<<interface>>) 5.395940 22.692600 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(DataProperty) dup sw 2 div 7.675942 ex sub 23.840110 m gs 1 -1 sc sh gr +(DataProperty) 4.900940 23.660100 m +dup sw 5.540000 exch sub +12 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd [] 0 sd 0 slj 0 slc -n 1.672249 18.828768 m 4.717962 18.828768 l 4.717962 18.836731 l 4.524618 18.836731 l s +n 1.672250 18.828800 m 4.717960 18.828800 l 4.717960 18.836700 l 4.524617 18.836700 l s [] 0 sd 0 slj 0 slc -n 4.899618 18.836731 m 4.399618 19.086731 l 4.524618 18.836731 l 4.399618 18.586731 l ef -n 4.899618 18.836731 m 4.399618 19.086731 l 4.524618 18.836731 l 4.399618 18.586731 l cp s +n 4.899617 18.836700 m 4.399617 19.086700 l 4.524617 18.836700 l 4.399617 18.586700 l ef +n 4.899617 18.836700 m 4.399617 19.086700 l 4.524617 18.836700 l 4.399617 18.586700 l cp s 0.100000 slw [] 0 sd 0 slj 0 slc -n 7.675942 22.190110 m 7.339526 22.190110 l 7.339526 19.936731 l 7.536421 19.936731 l s +n 7.675940 22.190100 m 7.339530 22.190100 l 7.339530 19.936700 l 7.536420 19.936700 l s /Courier-latin1 ff 0.560000 scf sf -(Data Constants) 7.439526 20.913420 m gs 1 -1 sc sh gr +(Data Constants) 7.439530 20.783400 m +dup sw 4.900000 exch sub +14 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 11.062569 12.898019 m 12.164040 12.898019 l 12.164040 17.144000 l 14.958000 17.144000 l s -/Courier-latin1 ff 0.560000 scf sf -(given) 12.264040 14.871010 m gs 1 -1 sc sh gr -(n) 11.262569 12.748019 m gs 1 -1 sc sh gr -(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr +n 11.062600 12.898000 m 12.164000 12.898000 l 12.164000 17.144000 l 14.958000 17.144000 l s +(given) 12.264000 14.741000 m +dup sw 1.750000 exch sub +5 div exch 0.0 exch + gs 1 -1 sc ashow gr +(n) 11.262600 12.618000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 14.408000 16.864000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 10.061421 18.836731 m 12.164040 18.836731 l 12.164040 17.144000 l 14.958000 17.144000 l s -/Courier-latin1 ff 0.560000 scf sf -(given) 12.264040 17.840365 m gs 1 -1 sc sh gr -(0..n) 10.261421 18.686731 m gs 1 -1 sc sh gr -(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr +n 10.061400 18.836700 m 12.164000 18.836700 l 12.164000 17.144000 l 14.958000 17.144000 l s +(given) 12.264000 17.710350 m +dup sw 1.750000 exch sub +5 div exch 0.0 exch + gs 1 -1 sc ashow gr +(0..n) 10.261400 18.556700 m +dup sw 1.400000 exch sub +4 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 14.408000 16.864000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 1.095192 10.315063 m 2.207518 10.315063 l 2.207518 12.896019 l 4.361154 12.896019 l s -/Courier-latin1 ff 0.560000 scf sf -(Provides Access) 2.307518 11.455541 m gs 1 -1 sc sh gr -(4) 1.295192 10.165063 m gs 1 -1 sc sh gr -(n) dup sw 4.161154 ex sub 12.746019 m gs 1 -1 sc sh gr +n 1.095190 10.315100 m 2.207520 10.315100 l 2.207520 12.896000 l 4.361150 12.896000 l s +(Provides Access) 2.307520 11.325550 m +dup sw 5.250000 exch sub +15 div exch 0.0 exch + gs 1 -1 sc ashow gr +(4) 1.295190 10.035100 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +(n) 3.811150 12.616000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n -3.003557 9.065063 m 0.446443 9.065063 l 1.046443 9.665063 l 1.046443 11.565063 l -3.003557 11.565063 l ef +n -3.003560 9.065060 m 0.446440 9.065060 l 1.046440 9.665060 l 1.046440 11.565060 l -3.003560 11.565060 l ef 0.000000 0.000000 0.000000 srgb -n -3.003557 9.065063 m 0.446443 9.065063 l 1.046443 9.665063 l 1.046443 11.565063 l -3.003557 11.565063 l cp s +n -3.003560 9.065060 m 0.446440 9.065060 l 1.046440 9.665060 l 1.046440 11.565060 l -3.003560 11.565060 l cp s 0.050000 slw -n 0.446443 9.065063 m 0.446443 9.665063 l 1.046443 9.665063 l s +n 0.446440 9.065060 m 0.446440 9.665060 l 1.046440 9.665060 l s /Courier-latin1 ff 0.560000 scf sf -(Standard ) -2.653557 10.265063 m gs 1 -1 sc sh gr -(Services) -2.653557 11.065063 m gs 1 -1 sc sh gr +(Standard ) -2.653560 10.117560 m +dup sw 3.150000 exch sub +9 div exch 0.0 exch + gs 1 -1 sc ashow gr +(Services) -2.653560 10.917560 m +dup sw 2.800000 exch sub +8 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n 15.656440 6.540000 m 15.656440 8.740000 l 23.778940 8.740000 l 23.778940 6.540000 l f +0.000000 0.000000 0.000000 srgb +n 15.656440 6.540000 m 15.656440 8.740000 l 23.778940 8.740000 l 23.778940 6.540000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) 17.442690 7.042500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(ParameterMutator) 15.906440 8.010000 m +dup sw 7.622500 exch sub +16 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slc +n 19.722633 15.993750 m 19.718022 9.226803 l s +[] 0 sd +0 slj +0 slc +n 19.717766 8.851803 m 19.968107 9.351633 l 19.718022 9.226803 l 19.468107 9.351974 l ef +n 19.717766 8.851803 m 19.968107 9.351633 l 19.718022 9.226803 l 19.468107 9.351974 l cp s +/Courier-latin1 ff 0.560000 scf sf +( Optional) 19.720161 12.226875 m +dup sw 3.150000 exch sub +9 div exch 0.0 exch + gs 1 -1 sc ashow gr showpage Modified: trunk/core/org.cishell.docs/src/img/cishellInteraction.pdf =================================================================== (Binary files differ) Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-03-06 18:05:47 UTC (rev 647) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-03-07 21:56:18 UTC (rev 648) @@ -21,15 +21,16 @@ An algorithm defines its inputs in two ways. First, the input data is defined in the algorithm's service metadata. Second, the acceptable user-entered parameters -are defined in a \class{MetaTypeProvider}, see section \ref{GUISpec}. +are defined in a \class{MetaTypeProvider} and published to the +\class{MetaTypeService}, see section \ref{GUISpec}. Figure \ref{fig:algExecWorkflow} shows the typical flow of information into and out of an algorithm. First the input parameter specification is pulled from the -\class{AlgorithmFactory}. If parameters are needed, then a UI is created and user -inputs are entered. To create an \class{Algorithm}, the \class{AlgorithmFactory} -is passed the user-entered parameters, zero or more pieces of data, and a -\class{CIShellContext}. The \class{Algorithm} is then executed and produces zero -or more pieces of data. +\class{MetaTypeService}. If parameters are needed, then a UI is created and +user inputs are entered. To create an \class{Algorithm}, the +\class{AlgorithmFactory} is passed the user-entered parameters, zero or more +pieces of data, and a \class{CIShellContext}. The \class{Algorithm} is then +executed and produces zero or more pieces of data. \begin{figure}[htb!] \centering @@ -41,13 +42,29 @@ \subsection{Optional Interfaces} Algorithm developers may augment algorithms with additional interfaces to enhance -parts of the execution workflow. An \class{AlgorithmFactory} can also implement -the \class{DataValidator} interface to validate the data beyond the data format -validation that an application should provide ahead of time. An \class{Algorithm} -can implement \class{ProgressTrackable} to allow for more detailed monitoring and -control of an \class{Algorithm}'s progress while executing. See each interface's -documentation for more details. +parts of the execution workflow. See each interface's documentation for more +details. +\begin{description} + \item[ParameterMutator] An \class{AlgorithmFactory} can implement the + \class{ParameterMutator} interface to add, remove, or modify an algorithm's + parameters (\class{AttributeDefinition}s in an \class{ObjectClassDefinition} + in a \class{MetaTypeProvider}) between the time when its + \class{MetaTypeProvider} is pulled from the \class{MetaTypeService} and when + the corresponding UI is shown to the user. This is typically done to + customize the input parameters based on the data to be given to the + algorithm. See section \ref{GUISpec} for information on constructing and + publishing \class{MetaTypeProviders}. + + \item[DataValidator] An \class{AlgorithmFactory} can implement the + \class{DataValidator} interface to validate the data beyond the data format + validation that an application should provide ahead of time. + + \item[ProgressTrackable] An \class{Algorithm} can implement + \class{ProgressTrackable} to allow for more detailed monitoring and control + of an \class{Algorithm}'s progress while executing. +\end{description} + \subsection{Algorithm Service Metadata Definition} \label{algMetaData} @@ -79,11 +96,21 @@ \end{quote} -\subsection*{parameters_pid} -\comments{Still need to define\ldots may play a bigger role than previously -though\ldots} +\subsection*{parameters\_pid} +When this key is not set, an algorithm's user-entered input parameters are +assumed to be registered in the \class{MetaTypeService} with a persistent id +equal to the algorithm service's ``service.pid''. An algorithm can override this +by setting this key to their custom persistent id. See section \ref{GUISpec} +for information on creating and publishing input parameters. +\begin{quote} +\begin{description} + \item[Example 1:] parameters\_pid = org.my.custom.pid.that.i.want.to.use +\end{description} +\end{quote} + + \subsection*{in\_data} Specifies the formats and number of \class{Data} inputs the algorithm accepts. The string is a comma separated list of data formats as @@ -93,6 +120,11 @@ inputs are necessary then the string ``null'' or not specifying the in\_data attribute at all is valid. +By using the ``+'', ``*'', or ``?'' prefixes, ambiguities could arise from +specifying multiple input formats that could easily fit into two or more +of the formats. An algorithm developer should take care when reading +in \class{Data} arrays from possibly ambiguous in\_data strings. + \begin{quote} \begin{description} \item[Example 1:] in\_data = null Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex 2008-03-06 18:05:47 UTC (rev 647) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex 2008-03-07 21:56:18 UTC (rev 648) @@ -62,8 +62,7 @@ \subsubsection*{Optional:} \begin{itemize} \item If additional user-entered parameters are needed, the algorithm should - provide a \class{MetaTypeProvider} through its AlgorithmFactory's - createParameters method. + provide a \class{MetaTypeProvider} published by the \class{MetaTypeService}. \item The algorithm's service metadata should have ``remoteable=true'' if it meets the requirements of a remoteable algorithm. \item The algorithm's service metadata should have ``parentage=default'' if @@ -133,10 +132,8 @@ \item The algorithm's service metadata must have ``type=converter''. \item The algorithm's service metadata must have ``conversion=lossy'' if data is lost during conversion or ``conversion=lossless'' if not. - \item The algorithm must not require any parameters. The - \class{AlgorithmFactory}'s createParameters method will never be called and - the \class{Dictionary} passed to the createAlgorithm method will always be - empty. + \item The algorithm must not require any parameters. The \class{Dictionary} + passed to the createAlgorithm method will always be empty. \end{itemize} \subsubsection*{Optional:} @@ -181,10 +178,8 @@ \item The algorithm's service metadata must have ``type=validator''. \item The algorithm's service metadata must have a ``label'' which is the common name of the data format being validated. - \item The algorithm must not require any parameters. The - \class{AlgorithmFactory}'s createParameters method will never be called and - the \class{Dictionary} passed to the createAlgorithm method will always be - empty. + \item The algorithm must not require any parameters. The \class{Dictionary} + passed to the createAlgorithm method will always be empty. \end{itemize} \subsubsection*{Optional:} Modified: trunk/core/org.cishell.docs/src/specification/tex/framework.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-03-06 18:05:47 UTC (rev 647) +++ trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-03-07 21:56:18 UTC (rev 648) @@ -32,6 +32,10 @@ algorithm. \item \textit{AlgorithmProperty} - The interface which provides string constants for an algorithm's service metadata. + \item \textit{ParameterMutator} - The interface an \class{AlgorithmFactory} + extends to provide the ability to add, remove, or modify user-entered + parameters specifications (see section \ref{GUISpec}) before being shown to an + end-user. \item \textit{DataValidator} - The interface an \class{AlgorithmFactory} extends to provide additional data validation in addition to the data format validation that an application should provide ahead of time. Modified: trunk/core/org.cishell.docs/src/specification/tex/introduction.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-03-06 18:05:47 UTC (rev 647) +++ trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-03-07 21:56:18 UTC (rev 648) @@ -7,7 +7,7 @@ while retaining their intellectual rights after distribution; (2) data holders to easily disseminate their data for use by others; (3) application developers to design applications from custom sets of algorithms and datasets that interoperate -seamlessly; and finally (4) end-users to use existing datasets and algorithms +seamlessly; and ultimately (4) end-users to use existing datasets and algorithms effectively. \section{CIShell Platform Overview} @@ -48,12 +48,12 @@ In this specification, algorithms are referred to in three different contexts. An abstract algorithm, is the pure idea of the algorithm with no actual source code. It is a series of steps sometimes put into psuedo-code and often published in -academic journals. An \class{Algorithm} with a capital A refers the Java class +academic journals. An \class{Algorithm} with a capital A refers to the Java class called Algorithm. And finally, an algorithm with a lowercase A refers to the -bundle of code that encompasses an algorithm written in code to work with the -CIShell Platform. This includes the implementation of \class{AlgorithmFactory} -and \class{Algorithm}, and the metadata, files, and other code that go into an -OSGi bundle. +bundle of code and metadata that encompasses an algorithm written to work with +the CIShell Platform. This includes the implementation of +\class{AlgorithmFactory} and \class{Algorithm}, and the metadata, files, and +other code that go into an OSGi bundle. All other conventions and terms are exactly the same as from OSGi's Core Specification, section 1.4. @@ -74,8 +74,6 @@ Version 1.0 \\ GUI Builder Service Specification & org.cishell.service.guibuilder & Version 1.0 \\ -Log Service Specification & org.osgi.service.log & Version 1.3 \\ -Preferences Service Specification & org.osgi.service.prefs & Version 1.1 \\ Data Manager Application Service Specification & org.cishell.app.datamanager & Version 1.0 \\ Scheduler Application Service Specification & org.cishell.app.scheduler & Modified: trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex 2008-03-06 18:05:47 UTC (rev 647) +++ trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex 2008-03-07 21:56:18 UTC (rev 648) @@ -13,7 +13,7 @@ Specification,'' this service defines the \class{MetaTypeProvider} class used for specifying user interfaces in CIShell. In addition, it provides an XML format for automatically generating \class{MetaTypeProvider}s and a service, - \class{MetaTypeService}, for harvesting them for use by bundles. + \class{MetaTypeService}, for harvesting them for use. \item[Log Service] as described in OSGi section 101 ``Log Service Specification,'' this service is used as a universal logging system for algorithms and services. See chapter \ref{logService} for more details. Modified: trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex 2008-03-06 18:05:47 UTC (rev 647) +++ trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex 2008-03-07 21:56:18 UTC (rev 648) @@ -6,8 +6,8 @@ The user-adjustable preferences specification defines how any service can publish user-adjustable preferences both globally and locally. In addition to global and local preferences, algorithms can allow the system to allow end-users to adjust -the default values for the algorithm parameters returned from -\class{AlgorithmFactory.createParameters}. For storing data that is not directly +the default values for algorithms' user-entered parameters specification +published to the \class{MetaTypeService}. For storing data that is not directly end-user adjustable, see chapter \ref{preferencesService}. \subsection{Publishing User Adjustable Preferences} @@ -19,13 +19,13 @@ METADATA.XML file or by the service implementing \class{MetaTypeProvider} and \class{ManagedService}. See section \ref{GUISpec} for more information. -\subsubsection*{Designate a Persistent ID (PID) for the OCD} Then they must -designate the ObjectClassDefinition a persistent id (PID). The PID can be -designated in two ways. The simplest way is by following the convention of -creating a string with the associated service's ``service.pid'' and appending -either ``.prefs.local'' or ``.prefs.global''. The other way is to designate -whatever PID the developer wishes and to provide a service property -``local\_pref\_pid'' or ``global\_pref\_pid'' which is set to whatever PID they wish. +\subsubsection*{Designate an OCD a Persistent ID (PID)} Then they must designate +the ObjectClassDefinition a persistent id (PID). The PID can be designated in two +ways. The simplest way is by following the convention of creating a string with +the associated service's ``service.pid'' and appending either ``.prefs.local'' or +``.prefs.global''. The other way is to designate whatever PID the developer +wishes and to provide a service prope... [truncated message content] |
From: <bh...@us...> - 2008-03-11 19:36:43
|
Revision: 650 http://cishell.svn.sourceforge.net/cishell/?rev=650&view=rev Author: bh2 Date: 2008-03-11 12:35:36 -0700 (Tue, 11 Mar 2008) Log Message: ----------- * Revised the title page * Added apache 2.0 license text * updated figures * added acknowledgements * added userprefs package for user-adjustable preferences Barring any other editions, this spec is... DONE!!!! Modified Paths: -------------- branches/spec_update/org.cishell.framework/META-INF/MANIFEST.MF branches/spec_update/org.cishell.framework/javadoc.xml branches/spec_update/org.cishell.framework/src/org/cishell/overview.html trunk/core/org.cishell.docs/build.properties trunk/core/org.cishell.docs/src/img/cishellInteraction.dia trunk/core/org.cishell.docs/src/img/cishellInteraction.eps trunk/core/org.cishell.docs/src/img/cishellInteraction.pdf trunk/core/org.cishell.docs/src/specification/main.tex trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex trunk/core/org.cishell.docs/src/specification/tex/data.tex trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex trunk/core/org.cishell.docs/src/specification/tex/framework.tex trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex trunk/core/org.cishell.docs/src/specification/tex/introduction.tex trunk/core/org.cishell.docs/src/specification/tex/logservice.tex trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex trunk/core/org.cishell.docs/src/specification/tex/preferencesservice.tex trunk/core/org.cishell.docs/src/specification/tex/schedulerservice.tex trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex Added Paths: ----------- branches/spec_update/org.cishell.framework/.settings/org.eclipse.jdt.core.prefs branches/spec_update/org.cishell.framework/src/org/cishell/framework/userprefs/ branches/spec_update/org.cishell.framework/src/org/cishell/framework/userprefs/UserPrefsProperty.java branches/spec_update/org.cishell.framework/src/org/cishell/framework/userprefs/package.html trunk/core/org.cishell.docs/src/img/cishellLogo.png trunk/core/org.cishell.docs/src/specification/tex/license.tex trunk/core/org.cishell.docs/src/specification/tex/title.tex Added: branches/spec_update/org.cishell.framework/.settings/org.eclipse.jdt.core.prefs =================================================================== --- branches/spec_update/org.cishell.framework/.settings/org.eclipse.jdt.core.prefs (rev 0) +++ branches/spec_update/org.cishell.framework/.settings/org.eclipse.jdt.core.prefs 2008-03-11 19:35:36 UTC (rev 650) @@ -0,0 +1,12 @@ +#Wed Feb 06 22:39:13 GMT 2008 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.4 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning +org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning +org.eclipse.jdt.core.compiler.source=1.3 Modified: branches/spec_update/org.cishell.framework/META-INF/MANIFEST.MF =================================================================== --- branches/spec_update/org.cishell.framework/META-INF/MANIFEST.MF 2008-03-10 22:31:38 UTC (rev 649) +++ branches/spec_update/org.cishell.framework/META-INF/MANIFEST.MF 2008-03-11 19:35:36 UTC (rev 650) @@ -1,19 +1,19 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 -Bundle-Name: CIShell Framework API +Bundle-Name: CIShell Platform API Bundle-SymbolicName: org.cishell.framework -Bundle-Version: 0.3.0 -Bundle-Vendor: Bruce Herr -Bundle-Localization: plugin +Bundle-Version: 1.0.0 +Bundle-Vendor: Cyberinfrastructure for Network Science Center Import-Package: org.osgi.framework, org.osgi.service.log, org.osgi.service.metatype, org.osgi.service.prefs -Export-Package: org.cishell.app.service.datamanager, - org.cishell.app.service.scheduler, - org.cishell.framework, - org.cishell.framework.algorithm, - org.cishell.framework.data, - org.cishell.service.conversion, - org.cishell.service.guibuilder -Eclipse-LazyStart: true +Export-Package: org.cishell.app.service.datamanager;version="1.0.0", + org.cishell.app.service.scheduler;version="1.0.0", + org.cishell.framework;version="1.0.0", + org.cishell.framework.algorithm;version="1.0.0", + org.cishell.framework.data;version="1.0.0", + org.cishell.framework.userprefs;version="1.0.0", + org.cishell.service.conversion;version="1.0.0", + org.cishell.service.guibuilder;version="1.0.0" +Bundle-ActivationPolicy: lazy Modified: branches/spec_update/org.cishell.framework/javadoc.xml =================================================================== --- branches/spec_update/org.cishell.framework/javadoc.xml 2008-03-10 22:31:38 UTC (rev 649) +++ branches/spec_update/org.cishell.framework/javadoc.xml 2008-03-11 19:35:36 UTC (rev 650) @@ -14,7 +14,7 @@ version="true" nodeprecatedlist="false" nodeprecated="false" - packagenames="org.cishell.framework.data,org.cishell.service.guibuilder,org.cishell.app.service.scheduler,org.cishell.framework,org.cishell.app.service.datamanager,org.cishell.framework.algorithm,org.cishell.service.conversion" + packagenames="org.cishell.framework.data,org.cishell.framework.userprefs,org.cishell.service.guibuilder,org.cishell.app.service.scheduler,org.cishell.framework,org.cishell.app.service.datamanager,org.cishell.framework.algorithm,org.cishell.service.conversion" sourcepath="src" classpath="lib/osgi.core.jar:lib/osgi.compendium.jar" overview="src/org/cishell/overview.html" Added: branches/spec_update/org.cishell.framework/src/org/cishell/framework/userprefs/UserPrefsProperty.java =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/userprefs/UserPrefsProperty.java (rev 0) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/userprefs/UserPrefsProperty.java 2008-03-11 19:35:36 UTC (rev 650) @@ -0,0 +1,112 @@ +/* **************************************************************************** + * CIShell: Cyberinfrastructure Shell, An Algorithm Integration Framework. + * + * All rights reserved. This program and the accompanying materials are made + * available under the terms of the Apache License v2.0 which accompanies + * this distribution, and is available at: + * http://www.apache.org/licenses/LICENSE-2.0.html + * + * Created on Feb 8, 2008 at Indiana University. + * + * Contributors: + * Indiana University - + * ***************************************************************************/ +package org.cishell.framework.userprefs; + +/** + * A standard set of properties and values to be placed in a service's + * metadata Dictionary when registering a service with the OSGi service registry + * for the purpose of publishing and receiving user-adjustable preferences. + * + * See the <a href="http://cishell.org/dev/docs/spec/cishell-spec-1.0.pdf"> + * CIShell Specification 1.0</a> for information on publishing user-adjustable + * preferences. + */ +public interface UserPrefsProperty { + + /** + * The suffix to add to the service's PID for generating a local preferences + * PID when using the standard naming convention + */ + public static final String LOCAL_PREFS_OCD_SUFFIX = ".prefs.local"; + + /** + * The suffix to add to the service's PID for generating a global preferences + * PID when using the standard naming convention + */ + public static final String GLOBAL_PREFS_OCD_SUFFIX = ".prefs.global"; + + /** + * The suffix to add to the service's PID for an {@link Algorithm}'s + * user-entered input parameters PID when using the standard naming convention + */ + public static final String PARAM_PREFS_OCD_SUFFIX = ""; + + /** + * The key for specifying a local preferences PID. + * Only use this when not following the standard naming convention. + */ + public static final String LOCAL_PREFS_PID = "local_prefs_pid"; + + /** + * The key for specifying a global preferences PID. + * Only use this when not following the standard naming convention. + */ + public static final String GLOBAL_PREFS_PID = "global_prefs_pid"; + + + + /** + * The key for specifying what types of preferences are published + */ + public static final String PREFS_PUBLISHED_KEY = "prefs_published"; + + /** + * The value for specifying that local preferences are to be published + */ + public static final String PUBLISH_LOCAL_PREFS_VALUE = "local"; + + /** + * The value for specifying that global preferences are to be published + */ + public static final String PUBLISH_GLOBAL_PREFS_VALUE = "global"; + + /** + * The value for specifying that an {@link Algorithm}'s user-entered input + * parameter defaults may be adjusted by the user + */ + public static final String PUBLISH_PARAM_DEFAULT_PREFS_VALUE = "param-defaults"; + + /** + * The key for declaring a need to receive preferences. "true" and "false" + * are the possible associated values. + */ + public static final String RECEIVE_PREFS_KEY = "receive_prefs"; + + + + /** + * The suffix to add to the service's PID for getting the local preferences + * directly from the ConfigurationAdmin (not recommended) + */ + public static final String LOCAL_PREFS_CONF_SUFFIX = ""; + + /** + * The suffix to add to the service's PID for getting the global preferences + * directly from the ConfigurationAdmin (not recommended) + */ + public static final String GLOBAL_PREFS_CONF_SUFFIX = GLOBAL_PREFS_OCD_SUFFIX; + + /** + * The suffix to add to the service's PID for getting an {@link Algorithm}'s + * user-entered input parameter defaults that have been user-adjusted directly + * from the ConfigurationAdmin (not recommended) + */ + public static final String PARAM_PREFS_CONF_SUFFIX = ".prefs.params"; + + /** + * A key set in each configuration object which states the Bundle-Version of + * the service when it was last updated + */ + public static final String BUNDLE_VERSION_KEY = "Bundle-Version"; +} Added: branches/spec_update/org.cishell.framework/src/org/cishell/framework/userprefs/package.html =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/framework/userprefs/package.html (rev 0) +++ branches/spec_update/org.cishell.framework/src/org/cishell/framework/userprefs/package.html 2008-03-11 19:35:36 UTC (rev 650) @@ -0,0 +1,30 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> + <title>org.cishell.framework.userprefs Package-level Javadoc</title> +<!-- +/* **************************************************************************** + * CIShell: Cyberinfrastructure Shell, An Algorithm Integration Framework. + * + * All rights reserved. This program and the accompanying materials are made + * available under the terms of the Apache License v2.0 which accompanies + * this distribution, and is available at: + * http://www.apache.org/licenses/LICENSE-2.0.html + * + * Created on Mar 11, 2008 at Indiana University. + * + * Contributors: + * Indiana University - + * ***************************************************************************/ +--> +</head> +<body>Provides interfaces required for publishing user-adjustable preferences. +<h2>Package Specification</h2> +The API related to publishing user-adjustable preferences. + +@see <a href="http://cishell.org/dev/docs/spec/cishell-spec-1.0.pdf"> +CIShell Specification 1.0</a> + +</body> +</html> \ No newline at end of file Modified: branches/spec_update/org.cishell.framework/src/org/cishell/overview.html =================================================================== --- branches/spec_update/org.cishell.framework/src/org/cishell/overview.html 2008-03-10 22:31:38 UTC (rev 649) +++ branches/spec_update/org.cishell.framework/src/org/cishell/overview.html 2008-03-11 19:35:36 UTC (rev 650) @@ -20,7 +20,7 @@ --> </head> <body> -API documentation for the Cyberinfrastructure Shell specification +API documentation for the Cyberinfrastructure Shell specification. @see <a href="http://www.osgi.org/osgi_technology/download_specs.asp">OSGi Service Platform Specification, Release 4</a></li> Modified: trunk/core/org.cishell.docs/build.properties =================================================================== --- trunk/core/org.cishell.docs/build.properties 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/build.properties 2008-03-11 19:35:36 UTC (rev 650) @@ -7,7 +7,7 @@ fw.src.dir = src fw.dir = ../org.cishell.framework fw.classpath = ${fw.dir}/lib/osgi.core.jar:${fw.dir}/lib/osgi.compendium.jar -fw.packages = org.cishell.framework.data,org.cishell.service.guibuilder,org.cishell.app.service.scheduler,org.cishell.framework,org.cishell.app.service.datamanager,org.cishell.framework.algorithm,org.cishell.service.conversion +fw.packages = org.cishell.framework.data,org.cishell.framework.userprefs,org.cishell.service.guibuilder,org.cishell.app.service.scheduler,org.cishell.framework,org.cishell.app.service.datamanager,org.cishell.framework.algorithm,org.cishell.service.conversion lib.ant_latex = lib/ant_latex_0.0.9_1.jar lib.texdoclet.jar = lib/texdoclet.jar Modified: trunk/core/org.cishell.docs/src/img/cishellInteraction.dia =================================================================== (Binary files differ) Modified: trunk/core/org.cishell.docs/src/img/cishellInteraction.eps =================================================================== --- trunk/core/org.cishell.docs/src/img/cishellInteraction.eps 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/img/cishellInteraction.eps 2008-03-11 19:35:36 UTC (rev 650) @@ -1,11 +1,11 @@ %!PS-Adobe-2.0 EPSF-2.0 %%Title: /home/bherr/workspace/org.cishell.docs/src/img/cishellInteraction.dia %%Creator: Dia v0.96.1 -%%CreationDate: Fri Mar 7 16:39:20 2008 +%%CreationDate: Tue Mar 11 11:32:40 2008 %%For: bherr %%Orientation: Portrait %%Magnification: 1.0000 -%%BoundingBox: 0 0 1055 520 +%%BoundingBox: 0 0 1257 521 %%BeginSetup %%EndSetup %%EndComments @@ -341,7 +341,7 @@ currentdict end definefont pop 28.346000 -28.346000 scale -3.053560 -24.440100 translate +10.163560 -24.440100 translate %%EndProlog @@ -381,17 +381,17 @@ [] 0 sd 0 slj 0 slc -n 27.417828 17.145000 m 23.876500 17.145000 l 23.876500 17.144000 l 22.655676 17.144000 l s +n 27.417800 17.145000 m 23.876500 17.145000 l 23.876500 17.144000 l 22.655700 17.144000 l s /Courier-latin1 ff 0.560000 scf sf (Creates) 23.976500 16.864500 m dup sw 2.450000 exch sub 7 div exch 0.0 exch gs 1 -1 sc ashow gr -(n) 26.867828 16.865000 m +(n) 26.867800 16.865000 m dup sw 0.350000 exch sub 1 div exch 0.0 exch gs 1 -1 sc ashow gr -(1) 22.855676 16.864000 m +(1) 22.855700 16.864000 m dup sw 0.350000 exch sub 1 div exch 0.0 exch gs 1 -1 sc ashow gr @@ -414,16 +414,16 @@ 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 12.958700 10.229000 m 12.958700 12.429000 l 19.143700 12.429000 l 19.143700 10.229000 l f +n 13.008700 9.429000 m 13.008700 11.629000 l 19.193700 11.629000 l 19.193700 9.429000 l f 0.000000 0.000000 0.000000 srgb -n 12.958700 10.229000 m 12.958700 12.429000 l 19.143700 12.429000 l 19.143700 10.229000 l cp s +n 13.008700 9.429000 m 13.008700 11.629000 l 19.193700 11.629000 l 19.193700 9.429000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 13.776200 10.731500 m +(<<interface>>) 13.826200 9.931500 m dup sw 4.550000 exch sub 13 div exch 0.0 exch gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(DataValidator) 13.208700 11.699000 m +(DataValidator) 13.258700 10.899000 m dup sw 5.685000 exch sub 13 div exch 0.0 exch gs 1 -1 sc ashow gr @@ -495,14 +495,14 @@ [] 0 sd [] 0 sd 0 slc -n 16.035133 15.993750 m 16.049006 12.915798 l s +n 16.035100 15.993800 m 16.093829 12.115748 l s [] 0 sd 0 slj 0 slc -n 16.050696 12.540802 m 16.298440 13.041924 l 16.049006 12.915798 l 15.798445 13.039670 l ef -n 16.050696 12.540802 m 16.298440 13.041924 l 16.049006 12.915798 l 15.798445 13.039670 l cp s +n 16.099507 11.740791 m 16.341907 12.244519 l 16.093829 12.115748 l 15.841965 12.236948 l ef +n 16.099507 11.740791 m 16.341907 12.244519 l 16.093829 12.115748 l 15.841965 12.236948 l cp s /Courier-latin1 ff 0.560000 scf sf -( Optional) 16.043166 14.071375 m +( Optional) 16.068150 13.671400 m dup sw 3.150000 exch sub 9 div exch 0.0 exch gs 1 -1 sc ashow gr @@ -525,7 +525,7 @@ [] 0 sd 0 slj 0 slc -n 18.731000 22.187000 m 18.736900 22.187000 l 18.736900 18.244000 l 18.781750 18.244000 l s +n 18.796000 22.187000 m 18.736900 22.187000 l 18.736900 18.244000 l 18.781700 18.244000 l s /Courier-latin1 ff 0.560000 scf sf (Service Constants) 18.836900 19.935500 m dup sw 5.950000 exch sub @@ -567,16 +567,16 @@ 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 3.336170 6.180020 m 3.336170 8.380020 l 12.048670 8.380020 l 12.048670 6.180020 l f +n 3.348670 6.167520 m 3.348670 8.367520 l 12.061170 8.367520 l 12.061170 6.167520 l f 0.000000 0.000000 0.000000 srgb -n 3.336170 6.180020 m 3.336170 8.380020 l 12.048670 8.380020 l 12.048670 6.180020 l cp s +n 3.348670 6.167520 m 3.348670 8.367520 l 12.061170 8.367520 l 12.061170 6.167520 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<class>>) 6.117420 6.682520 m +(<<class>>) 6.129920 6.670020 m dup sw 3.150000 exch sub 9 div exch 0.0 exch gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(LocalCIShellContext) 3.586170 7.650020 m +(LocalCIShellContext) 3.598670 7.637520 m dup sw 8.212500 exch sub 19 div exch 0.0 exch gs 1 -1 sc ashow gr @@ -585,19 +585,19 @@ [] 0 sd 0 slj 0 slc -n 7.710510 11.258897 m 7.710510 8.828840 l 7.711170 8.828840 l 7.711170 8.429910 l s +n 7.701548 11.258857 m 7.710510 8.828840 l 7.704920 8.828840 l 7.704920 8.417545 l s [] 0 sd 0 slj 0 slc -n 7.710510 11.633897 m 7.460510 11.133897 l 7.710510 11.258897 l 7.960510 11.133897 l ef -n 7.710510 11.633897 m 7.460510 11.133897 l 7.710510 11.258897 l 7.960510 11.133897 l cp s +n 7.700165 11.633854 m 7.452011 11.132936 l 7.701548 11.258857 l 7.952007 11.134780 l ef +n 7.700165 11.633854 m 7.452011 11.132936 l 7.701548 11.258857 l 7.952007 11.134780 l cp s 0.100000 slw [] 0 sd [] 0 sd 0 slj 0 slc -n 22.626200 17.313300 m 21.531500 18.353100 l 22.625500 18.353100 l ef -n 22.626200 17.313300 m 21.531500 18.353100 l 22.625500 18.353100 l cp s +n 22.713700 17.313300 m 21.619000 18.353100 l 22.713000 18.353100 l ef +n 22.713700 17.313300 m 21.619000 18.353100 l 22.713000 18.353100 l cp s 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb @@ -671,67 +671,170 @@ gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd +1.000000 1.000000 1.000000 srgb +n 15.656400 6.140000 m 15.656400 8.340000 l 23.778900 8.340000 l 23.778900 6.140000 l f +0.000000 0.000000 0.000000 srgb +n 15.656400 6.140000 m 15.656400 8.340000 l 23.778900 8.340000 l 23.778900 6.140000 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) 17.442650 6.642500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(ParameterMutator) 15.906400 7.610000 m +dup sw 7.622500 exch sub +16 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw +[] 0 sd +[] 0 sd +0 slc +n 19.722600 15.993800 m 19.717965 8.826803 l s +[] 0 sd 0 slj 0 slc -n 1.095190 10.315100 m 2.207520 10.315100 l 2.207520 12.896000 l 4.361150 12.896000 l s -(Provides Access) 2.307520 11.325550 m -dup sw 5.250000 exch sub -15 div exch 0.0 exch +n 19.717722 8.451803 m 19.968046 8.951642 l 19.717965 8.826803 l 19.468046 8.951965 l ef +n 19.717722 8.451803 m 19.968046 8.951642 l 19.717965 8.826803 l 19.468046 8.951965 l cp s +/Courier-latin1 ff 0.560000 scf sf +( Optional) 19.720125 12.026900 m +dup sw 3.150000 exch sub +9 div exch 0.0 exch gs 1 -1 sc ashow gr -(4) 1.295190 10.035100 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch +0.100000 slw +[] 0 sd +1.000000 1.000000 1.000000 srgb +n -5.096060 14.242500 m -5.096060 16.442500 l -0.046060 16.442500 l -0.046060 14.242500 l f +0.000000 0.000000 0.000000 srgb +n -5.096060 14.242500 m -5.096060 16.442500 l -0.046060 16.442500 l -0.046060 14.242500 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) -4.846060 14.745000 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch gs 1 -1 sc ashow gr -(n) 3.811150 12.616000 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(LogService) -4.832310 15.712500 m +dup sw 4.522500 exch sub +10 div exch 0.0 exch gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n -3.003560 9.065060 m 0.446440 9.065060 l 1.046440 9.665060 l 1.046440 11.565060 l -3.003560 11.565060 l ef +n -8.508560 11.530000 m -8.508560 13.730000 l -0.036060 13.730000 l -0.036060 11.530000 l f 0.000000 0.000000 0.000000 srgb -n -3.003560 9.065060 m 0.446440 9.065060 l 1.046440 9.665060 l 1.046440 11.565060 l -3.003560 11.565060 l cp s -0.050000 slw -n 0.446440 9.065060 m 0.446440 9.665060 l 1.046440 9.665060 l s +n -8.508560 11.530000 m -8.508560 13.730000 l -0.036060 13.730000 l -0.036060 11.530000 l cp s /Courier-latin1 ff 0.560000 scf sf -(Standard ) -2.653560 10.117560 m -dup sw 3.150000 exch sub -9 div exch 0.0 exch +(<<interface>>) -6.547310 12.032500 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch gs 1 -1 sc ashow gr -(Services) -2.653560 10.917560 m -dup sw 2.800000 exch sub -8 div exch 0.0 exch +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(PreferencesService) -8.258560 13.000000 m +dup sw 7.972500 exch sub +18 div exch 0.0 exch gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 15.656440 6.540000 m 15.656440 8.740000 l 23.778940 8.740000 l 23.778940 6.540000 l f +n -10.113560 6.160000 m -10.113560 8.360000 l -0.046060 8.360000 l -0.046060 6.160000 l f 0.000000 0.000000 0.000000 srgb -n 15.656440 6.540000 m 15.656440 8.740000 l 23.778940 8.740000 l 23.778940 6.540000 l cp s +n -10.113560 6.160000 m -10.113560 8.360000 l -0.046060 8.360000 l -0.046060 6.160000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 17.442690 7.042500 m +(<<interface>>) -7.354810 6.662500 m dup sw 4.550000 exch sub 13 div exch 0.0 exch gs 1 -1 sc ashow gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(ParameterMutator) 15.906440 8.010000 m -dup sw 7.622500 exch sub -16 div exch 0.0 exch +(DataConversionService) -9.863560 7.630000 m +dup sw 9.567500 exch sub +21 div exch 0.0 exch gs 1 -1 sc ashow gr 0.100000 slw [] 0 sd +1.000000 1.000000 1.000000 srgb +n -8.008560 8.867500 m -8.008560 11.067500 l -0.056060 11.067500 l -0.056060 8.867500 l f +0.000000 0.000000 0.000000 srgb +n -8.008560 8.867500 m -8.008560 11.067500 l -0.056060 11.067500 l -0.056060 8.867500 l cp s +/Courier-latin1 ff 0.560000 scf sf +(<<interface>>) -6.307310 9.370000 m +dup sw 4.550000 exch sub +13 div exch 0.0 exch + gs 1 -1 sc ashow gr +/Helvetica-Bold-latin1 ff 0.700000 scf sf +(GUIBuilderService) -7.758560 10.337500 m +dup sw 7.452500 exch sub +17 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw [] 0 sd +0 slj 0 slc -n 19.722633 15.993750 m 19.718022 9.226803 l s +n 0.002994 7.260000 m 2.047600 7.260000 l 2.047600 12.896000 l 4.410510 12.896000 l s +/Courier-latin1 ff 0.560000 scf sf +(Provides Access) 2.147600 9.798000 m +dup sw 5.250000 exch sub +15 div exch 0.0 exch + gs 1 -1 sc ashow gr +(1) 0.202994 6.980000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +(n) 3.860510 12.616000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw [] 0 sd +[] 0 sd 0 slj 0 slc -n 19.717766 8.851803 m 19.968107 9.351633 l 19.718022 9.226803 l 19.468107 9.351974 l ef -n 19.717766 8.851803 m 19.968107 9.351633 l 19.718022 9.226803 l 19.468107 9.351974 l cp s -/Courier-latin1 ff 0.560000 scf sf -( Optional) 19.720161 12.226875 m -dup sw 3.150000 exch sub -9 div exch 0.0 exch +n 0.053166 10.164762 m -1.041534 11.204562 l 0.052466 11.204562 l ef +n 0.053166 10.164762 m -1.041534 11.204562 l 0.052466 11.204562 l cp s +0.100000 slw +[] 0 sd +[] 0 sd +0 slj +0 slc +n 0.043882 12.838512 m -1.050818 13.878312 l 0.043182 13.878312 l ef +n 0.043882 12.838512 m -1.050818 13.878312 l 0.043182 13.878312 l cp s +0.100000 slw +[] 0 sd +[] 0 sd +0 slj +0 slc +n 0.052632 15.554762 m -1.042068 16.594562 l 0.051932 16.594562 l ef +n 0.052632 15.554762 m -1.042068 16.594562 l 0.051932 16.594562 l cp s +0.100000 slw +[] 0 sd +[] 0 sd +0 slj +0 slc +n 0.061382 7.458512 m -1.033318 8.498312 l 0.060682 8.498312 l ef +n 0.061382 7.458512 m -1.033318 8.498312 l 0.060682 8.498312 l cp s +0.100000 slw +[] 0 sd +0 slj +0 slc +n -0.006049 9.967500 m 2.043610 9.967500 l 2.043610 12.896000 l 4.361082 12.896000 l s +(1) 0.193951 9.687500 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch gs 1 -1 sc ashow gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 0.011290 12.630000 m 2.043610 12.630000 l 2.043610 12.896000 l 4.410510 12.896000 l s +(1) 0.211290 12.350000 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr +0.100000 slw +[] 0 sd +0 slj +0 slc +n 0.003286 15.342500 m 2.043610 15.342500 l 2.043610 12.896000 l 4.361082 12.896000 l s +(1) 0.203286 15.062500 m +dup sw 0.350000 exch sub +1 div exch 0.0 exch + gs 1 -1 sc ashow gr showpage Modified: trunk/core/org.cishell.docs/src/img/cishellInteraction.pdf =================================================================== (Binary files differ) Added: trunk/core/org.cishell.docs/src/img/cishellLogo.png =================================================================== (Binary files differ) Property changes on: trunk/core/org.cishell.docs/src/img/cishellLogo.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Modified: trunk/core/org.cishell.docs/src/specification/main.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/main.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/main.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,37 +1,45 @@ %% Cyberinfrastructure Shell (CIShell) Core Specification %% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% % \documentclass[pdftex,11pt,letterpaper]{report} \usepackage[top=1in, left=1in, right=1in, bottom=1in]{geometry} \usepackage[pdftex]{graphicx} \DeclareGraphicsExtensions{.pdf,.png,.jpg,.mps,.eps} -\usepackage[pdftex]{hyperref} \usepackage{color} +\usepackage{../mystyle} +\input{./tex/api.tex} +\packagesheader{} + +\usepackage[pdftex]{hyperref} \hypersetup{ - pdftitle={Cyberinfrastructure Shell (CIShell) Core Specification 1.0}, % - title pdfsubject={Cyberinfrastructure Shell (CIShell) Core Specification - 1.0}, - pdfauthor={}, - pdfnewwindow=true, % links in new window + pdftitle={Cyberinfrastructure Shell (CIShell) - Core Specification 1.0}, + pdfsubject={Cyberinfrastructure Shell (CIShell) - Core Specification 1.0}, + pdfauthor={Bruce W. Herr II}, + pdfnewwindow=true% links in new window } -\usepackage{../mystyle} -\title{Cyberinfrastructure Shell (CIShell) \\ -Core Specification \\ -1.0 \\ -\textbf{DRAFT}} -% \author{} % Will fill in later -% \date{} % ditto +\raggedright -\input{./tex/api.tex} -\packagesheader{} - \begin{document} -\maketitle{} +\input{./tex/title.tex} \tableofcontents{} \input{./tex/introduction.tex} @@ -45,8 +53,8 @@ \orgcishellframework{} \orgcishellframeworkalgorithm{} \orgcishellframeworkdata{} +\orgcishellframeworkuserprefs{} -%% Each service gets its own tex file \input{./tex/dataconversionservice.tex} \input{./tex/guibuilderservice.tex} \input{./tex/logservice.tex} @@ -54,4 +62,6 @@ \input{./tex/datamanagerservice.tex} \input{./tex/schedulerservice.tex} +\input{./tex/license.tex} + \end{document} Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \section{Algorithm Specification} \subsection*{\textit{Version 1.0}} Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithmtypes.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \subsection{Algorithm Types} \label{algConstraints} \subsubsection{Introduction} Modified: trunk/core/org.cishell.docs/src/specification/tex/data.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/data.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/data.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \section{Data Specification} \label{dataSpec} \subsection*{\textit{Version 1.0}} Modified: trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/dataconversionservice.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \chapter{Data Conversion Service Specification} \section*{\textit{Version 1.0}} \section{Introduction} Modified: trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/datamanagerservice.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \chapter{Data Manager Application Service Specification} \section*{\textit{Version 1.0}} Modified: trunk/core/org.cishell.docs/src/specification/tex/framework.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/framework.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \chapter{Framework API} \section*{\textit{Version 1.0}} Modified: trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/guibuilderservice.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \chapter{GUI Builder Service Specification} \section*{\textit{Version 1.0}} \section{Introduction} Modified: trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \section{User Interface Specification} \label{GUISpec} \subsection*{\textit{Version 1.0}} Modified: trunk/core/org.cishell.docs/src/specification/tex/introduction.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \chapter{Introduction} The Cyberinfrastructure Shell (CIShell) is an open source, community-driven @@ -10,12 +28,28 @@ seamlessly; and ultimately (4) end-users to use datasets and algorithms effectively. +\section{Acknowledgements} + +The Cyberinfrastructure Shell was designed and developed at the +Cyberinfrastructure for Network Science Center (CNSC) at Indiana University in +Bloomington, Indiana. The specification and API was designed and authored by +Bruce W. Herr II, but received input from all members of the CIShell team. +Important contributors from the CIShell team include Katy B\"{o}rner (director of +CNSC), Weixia Huang, Russell Duhon, Micah Linnemeier, and Timothy Kelley. Much of +the design of CIShell draws on previous work by Shashikant Penumarthy, Bruce W. +Herr II, and Katy B\"{o}rner on the Information Visualization Cyberinfrastructure +(IVC). Thanks go out to all those who have used or contributed to IVC, CIShell, +and the Network Workbench (the first project to use CIShell). + \section{CIShell Platform Overview} The CIShell Platform consists of Java interface definitions for algorithms, data, services for algorithm developers, and services for application developers. Much of the platform uses metadata and is fully defined. +This specification and associated Java API are released under the Apache 2.0 +License. + %The next version should have this section. %\section{What is New} @@ -32,7 +66,7 @@ \item Application developers building on CIShell \end{itemize} -The CIShell Specifications assume that the reader has at least one year of +The CIShell Specification assumes that the reader has at least one year of practical experience in writing Java programs. CIShell is built to run on the OSGi Service Platform Release 4\footnote{http://www.osgi.org/Release4/Download} and thus a working knowledge of OSGi is expected. OSGi (and thus CIShell) is @@ -71,6 +105,8 @@ Framework Specification & org.cishell.framework & Version 1.0 \\ Algorithm Specification & org.cishell.framework.algorithm & Version 1.0 \\ Data Specification & org.cishell.framework.data & Version 1.0 \\ +User Adjustable Preferences Specification & org.cishell.framework.userprefs & +Version 1.0 \\ Data Conversion Service Specification & org.cishell.service.conversion & Version 1.0 \\ GUI Builder Service Specification & org.cishell.service.guibuilder & Version Added: trunk/core/org.cishell.docs/src/specification/tex/license.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/license.tex (rev 0) +++ trunk/core/org.cishell.docs/src/specification/tex/license.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -0,0 +1,199 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + +\appendix + +\chapter{Apache 2.0 License} +\begin{verbatim} + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +\end{verbatim} \ No newline at end of file Modified: trunk/core/org.cishell.docs/src/specification/tex/logservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/logservice.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/logservice.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \chapter{Log Service Specification} \label{logService} \section*{Version 1.3} Modified: trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \section{OSGi Dependencies} CIShell is built to be run in a fully compliant OSGi Service Platform R4 Modified: trunk/core/org.cishell.docs/src/specification/tex/preferencesservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/preferencesservice.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/preferencesservice.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \chapter{Preferences Service Specification} \label{preferencesService} \section*{Version 1.1} Modified: trunk/core/org.cishell.docs/src/specification/tex/schedulerservice.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/schedulerservice.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/schedulerservice.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + \chapter{Scheduler Application Service Specification} \section*{Version 1.0} Added: trunk/core/org.cishell.docs/src/specification/tex/title.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/title.tex (rev 0) +++ trunk/core/org.cishell.docs/src/specification/tex/title.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -0,0 +1,59 @@ +%% Cyberinfrastructure Shell (CIShell) Core Specification +%% +%% Copyright 2006,2007,2008 Indiana University +%% +%% 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. +%% +% + +\begin{titlepage} +\begin{center} + +\vspace*{1in} + +\includegraphics[width=0.7\textwidth]{../img/cishellLogo.png}\\ +{\LARGE Cyberinfrastructure Shell}\\ +{\Large Core Specification 1.0}\\ +%{\Large 1.0} +\center{\large March 2008} + +\vspace*{\fill} + +\begin{minipage}{0.7\textwidth} +\begin{small} +\definecolor{Gray}{rgb}{0.55,0.55,0.55} +{\color{Gray} + +\center{Copyright \copyright{} 2006, 2007, 2008 Indiana University} + +\begin{flushleft} +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 +\end{flushleft} + +\center{http://www.apache.org/licenses/LICENSE-2.0} + +\begin{flushleft} +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. +\end{flushleft} + +} +\end{small} +\end{minipage} + +\end{center} +\end{titlepage} Modified: trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex 2008-03-10 22:31:38 UTC (rev 649) +++ trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex 2008-03-11 19:35:36 UTC (rev 650) @@ -1,3 +1,21 @@ +%% Cyberinfrastruc... [truncated message content] |
From: <bh...@us...> - 2008-03-14 15:13:26
|
Revision: 656 http://cishell.svn.sourceforge.net/cishell/?rev=656&view=rev Author: bh2 Date: 2008-03-14 08:13:09 -0700 (Fri, 14 Mar 2008) Log Message: ----------- Updated spec based on katy's latest inputs Modified Paths: -------------- trunk/core/org.cishell.docs/src/img/cishellInteraction.dia trunk/core/org.cishell.docs/src/img/cishellInteraction.eps trunk/core/org.cishell.docs/src/img/cishellInteraction.pdf trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex trunk/core/org.cishell.docs/src/specification/tex/introduction.tex trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex Modified: trunk/core/org.cishell.docs/src/img/cishellInteraction.dia =================================================================== (Binary files differ) Modified: trunk/core/org.cishell.docs/src/img/cishellInteraction.eps =================================================================== --- trunk/core/org.cishell.docs/src/img/cishellInteraction.eps 2008-03-13 15:51:59 UTC (rev 655) +++ trunk/core/org.cishell.docs/src/img/cishellInteraction.eps 2008-03-14 15:13:09 UTC (rev 656) @@ -1,11 +1,11 @@ %!PS-Adobe-2.0 EPSF-2.0 -%%Title: /home/bherr/workspace/org.cishell.docs/src/img/cishellInteraction.dia -%%Creator: Dia v0.96.1 -%%CreationDate: Tue Mar 11 11:32:40 2008 +%%Title: /home/bherr/cishell-1.0-workspace/org.cishell.docs/src/img/cishellInteraction.dia +%%Creator: Dia v0.95 +%%CreationDate: Fri Mar 14 10:51:55 2008 %%For: bherr %%Orientation: Portrait %%Magnification: 1.0000 -%%BoundingBox: 0 0 1257 521 +%%BoundingBox: 0 0 1255 521 %%BeginSetup %%EndSetup %%EndComments @@ -341,26 +341,20 @@ currentdict end definefont pop 28.346000 -28.346000 scale -10.163560 -24.440100 translate +10.163600 -24.440100 translate %%EndProlog 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 14.958000 16.044000 m 14.958000 18.244000 l 22.605500 18.244000 l 22.605500 16.044000 l f +n 14.958000 16.044000 m 14.958000 18.244000 l 22.508000 18.244000 l 22.508000 16.044000 l f 0.000000 0.000000 0.000000 srgb -n 14.958000 16.044000 m 14.958000 18.244000 l 22.605500 18.244000 l 22.605500 16.044000 l cp s +n 14.958000 16.044000 m 14.958000 18.244000 l 22.508000 18.244000 l 22.508000 16.044000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 16.506750 16.546500 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div 18.733000 ex sub 16.694000 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(AlgorithmFactory) 15.208000 17.514000 m -dup sw 7.147500 exch sub -16 div exch 0.0 exch - gs 1 -1 sc ashow gr +(AlgorithmFactory) dup sw 2 div 18.733000 ex sub 17.694000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb @@ -368,97 +362,58 @@ 0.000000 0.000000 0.000000 srgb n 27.468000 16.045000 m 27.468000 18.245000 l 32.518000 18.245000 l 32.518000 16.045000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 27.718000 16.547500 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div 29.993000 ex sub 16.695000 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(Algorithm) 27.953000 17.515000 m -dup sw 4.080000 exch sub -9 div exch 0.0 exch - gs 1 -1 sc ashow gr +(Algorithm) dup sw 2 div 29.993000 ex sub 17.695000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 27.417800 17.145000 m 23.876500 17.145000 l 23.876500 17.144000 l 22.655700 17.144000 l s +n 27.417828 17.145000 m 23.876500 17.145000 l 23.876500 17.144000 l 22.558290 17.144000 l s /Courier-latin1 ff 0.560000 scf sf -(Creates) 23.976500 16.864500 m -dup sw 2.450000 exch sub -7 div exch 0.0 exch - gs 1 -1 sc ashow gr -(n) 26.867800 16.865000 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr -(1) 22.855700 16.864000 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr +(Creates) 23.976500 16.994500 m gs 1 -1 sc sh gr +(n) dup sw 27.217828 ex sub 16.995000 m gs 1 -1 sc sh gr +(1) 22.758290 16.994000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 14.706000 22.187000 m 14.706000 24.387000 l 22.886000 24.387000 l 22.886000 22.187000 l f +n 14.706000 22.187000 m 14.706000 24.387000 l 22.756000 24.387000 l 22.756000 22.187000 l f 0.000000 0.000000 0.000000 srgb -n 14.706000 22.187000 m 14.706000 24.387000 l 22.886000 24.387000 l 22.886000 22.187000 l cp s +n 14.706000 22.187000 m 14.706000 24.387000 l 22.756000 24.387000 l 22.756000 22.187000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 16.521000 22.689500 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div 18.731000 ex sub 22.837000 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(AlgorithmProperty) 14.956000 23.657000 m -dup sw 7.680000 exch sub -17 div exch 0.0 exch - gs 1 -1 sc ashow gr +(AlgorithmProperty) dup sw 2 div 18.731000 ex sub 23.837000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 13.008700 9.429000 m 13.008700 11.629000 l 19.193700 11.629000 l 19.193700 9.429000 l f +n 12.971200 9.441500 m 12.971200 11.641500 l 19.121200 11.641500 l 19.121200 9.441500 l f 0.000000 0.000000 0.000000 srgb -n 13.008700 9.429000 m 13.008700 11.629000 l 19.193700 11.629000 l 19.193700 9.429000 l cp s +n 12.971200 9.441500 m 12.971200 11.641500 l 19.121200 11.641500 l 19.121200 9.441500 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 13.826200 9.931500 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div 16.046200 ex sub 10.091500 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(DataValidator) 13.258700 10.899000 m -dup sw 5.685000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(DataValidator) dup sw 2 div 16.046200 ex sub 11.091500 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 25.944300 10.154700 m 25.944300 12.354700 l 34.036800 12.354700 l 34.036800 10.154700 l f +n 25.944300 10.154700 m 25.944300 12.354700 l 34.044300 12.354700 l 34.044300 10.154700 l f 0.000000 0.000000 0.000000 srgb -n 25.944300 10.154700 m 25.944300 12.354700 l 34.036800 12.354700 l 34.036800 10.154700 l cp s +n 25.944300 10.154700 m 25.944300 12.354700 l 34.044300 12.354700 l 34.044300 10.154700 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 27.715550 10.657200 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div 29.994300 ex sub 10.804700 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(ProgressTrackable) 26.194300 11.624700 m -dup sw 7.592500 exch sub -17 div exch 0.0 exch - gs 1 -1 sc ashow gr +(ProgressTrackable) dup sw 2 div 29.994300 ex sub 11.804700 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 26.740000 6.159000 m 26.740000 8.359000 l 34.097500 8.359000 l 34.097500 6.159000 l f +n 26.740000 6.159000 m 26.740000 8.359000 l 33.990000 8.359000 l 33.990000 6.159000 l f 0.000000 0.000000 0.000000 srgb -n 26.740000 6.159000 m 26.740000 8.359000 l 34.097500 8.359000 l 34.097500 6.159000 l cp s +n 26.740000 6.159000 m 26.740000 8.359000 l 33.990000 8.359000 l 33.990000 6.159000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 28.143750 6.661500 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div 30.365000 ex sub 6.809000 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(ProgressMonitor) 26.990000 7.629000 m -dup sw 6.857500 exch sub -15 div exch 0.0 exch - gs 1 -1 sc ashow gr +(ProgressMonitor) dup sw 2 div 30.365000 ex sub 7.809000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb @@ -466,46 +421,31 @@ 0.000000 0.000000 0.000000 srgb n 5.011420 17.736700 m 5.011420 19.936700 l 10.061420 19.936700 l 10.061420 17.736700 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 5.261420 18.239200 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div 7.536420 ex sub 18.386700 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(Data) 6.566420 19.206700 m -dup sw 1.940000 exch sub -4 div exch 0.0 exch - gs 1 -1 sc ashow gr +(Data) dup sw 2 div 7.536420 ex sub 19.386700 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n -2.927750 17.728800 m -2.927750 19.928800 l 1.679750 19.928800 l 1.679750 17.728800 l f +n -2.927750 17.728800 m -2.927750 19.928800 l 1.672250 19.928800 l 1.672250 17.728800 l f 0.000000 0.000000 0.000000 srgb -n -2.927750 17.728800 m -2.927750 19.928800 l 1.679750 19.928800 l 1.679750 17.728800 l cp s +n -2.927750 17.728800 m -2.927750 19.928800 l 1.672250 19.928800 l 1.672250 17.728800 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<class>>) -2.199000 18.231300 m -dup sw 3.150000 exch sub -9 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<class>>) dup sw 2 div -0.627750 ex sub 18.378800 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(BasicData) -2.677750 19.198800 m -dup sw 4.107500 exch sub -9 div exch 0.0 exch - gs 1 -1 sc ashow gr +(BasicData) dup sw 2 div -0.627750 ex sub 19.378800 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd [] 0 sd 0 slc -n 16.035100 15.993800 m 16.093829 12.115748 l s +n 16.035100 15.993800 m 16.044958 12.128302 l s [] 0 sd 0 slj 0 slc -n 16.099507 11.740791 m 16.341907 12.244519 l 16.093829 12.115748 l 15.841965 12.236948 l ef -n 16.099507 11.740791 m 16.341907 12.244519 l 16.093829 12.115748 l 15.841965 12.236948 l cp s +n 16.045915 11.753303 m 16.294639 12.253939 l 16.044958 12.128302 l 15.794640 12.252664 l ef +n 16.045915 11.753303 m 16.294639 12.253939 l 16.044958 12.128302 l 15.794640 12.252664 l cp s /Courier-latin1 ff 0.560000 scf sf -( Optional) 16.068150 13.671400 m -dup sw 3.150000 exch sub -9 div exch 0.0 exch - gs 1 -1 sc ashow gr +( Optional) 16.040650 13.817650 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd [] 0 sd @@ -517,80 +457,54 @@ n 29.994075 12.493903 m 30.243965 12.993958 l 29.993993 12.868903 l 29.743965 12.993848 l ef n 29.994075 12.493903 m 30.243965 12.993958 l 29.993993 12.868903 l 29.743965 12.993848 l cp s /Courier-latin1 ff 0.560000 scf sf -( Optional) 29.993700 14.059800 m -dup sw 3.150000 exch sub -9 div exch 0.0 exch - gs 1 -1 sc ashow gr +( Optional) 29.993700 14.199800 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 0 slj 0 slc n 18.796000 22.187000 m 18.736900 22.187000 l 18.736900 18.244000 l 18.781700 18.244000 l s /Courier-latin1 ff 0.560000 scf sf -(Service Constants) 18.836900 19.935500 m -dup sw 5.950000 exch sub -17 div exch 0.0 exch - gs 1 -1 sc ashow gr +(Service Constants) 18.836900 20.065500 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 0 slj 0 slc n 26.701000 7.259000 m 24.447100 7.259000 l 24.447100 11.254700 l 25.944300 11.254700 l s -(Communications) 24.547100 8.976850 m -dup sw 4.900000 exch sub -14 div exch 0.0 exch - gs 1 -1 sc ashow gr -(1) 26.151000 6.979000 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr -(1) 25.394300 10.974700 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr +/Courier-latin1 ff 0.560000 scf sf +(Communications) 24.547100 9.106850 m gs 1 -1 sc sh gr +(1) dup sw 26.501000 ex sub 7.109000 m gs 1 -1 sc sh gr +(1) dup sw 25.744300 ex sub 11.104700 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 4.410510 11.796000 m 4.410510 13.996000 l 10.980510 13.996000 l 10.980510 11.796000 l f +n 4.410510 11.796000 m 4.410510 13.996000 l 11.010510 13.996000 l 11.010510 11.796000 l f 0.000000 0.000000 0.000000 srgb -n 4.410510 11.796000 m 4.410510 13.996000 l 10.980510 13.996000 l 10.980510 11.796000 l cp s +n 4.410510 11.796000 m 4.410510 13.996000 l 11.010510 13.996000 l 11.010510 11.796000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 5.420510 12.298500 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div 7.710510 ex sub 12.446000 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(CIShellContext) 4.660510 13.266000 m -dup sw 6.070000 exch sub -14 div exch 0.0 exch - gs 1 -1 sc ashow gr +(CIShellContext) dup sw 2 div 7.710510 ex sub 13.446000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 3.348670 6.167520 m 3.348670 8.367520 l 12.061170 8.367520 l 12.061170 6.167520 l f +n 3.336170 6.167520 m 3.336170 8.367520 l 12.086170 8.367520 l 12.086170 6.167520 l f 0.000000 0.000000 0.000000 srgb -n 3.348670 6.167520 m 3.348670 8.367520 l 12.061170 8.367520 l 12.061170 6.167520 l cp s +n 3.336170 6.167520 m 3.336170 8.367520 l 12.086170 8.367520 l 12.086170 6.167520 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<class>>) 6.129920 6.670020 m -dup sw 3.150000 exch sub -9 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<class>>) dup sw 2 div 7.711170 ex sub 6.817520 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(LocalCIShellContext) 3.598670 7.637520 m -dup sw 8.212500 exch sub -19 div exch 0.0 exch - gs 1 -1 sc ashow gr +(LocalCIShellContext) dup sw 2 div 7.711170 ex sub 7.817520 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd [] 0 sd 0 slj 0 slc -n 7.701548 11.258857 m 7.710510 8.828840 l 7.704920 8.828840 l 7.704920 8.417545 l s +n 7.710510 11.258854 m 7.710510 8.828840 l 7.711170 8.828840 l 7.711170 8.417545 l s [] 0 sd 0 slj 0 slc -n 7.700165 11.633854 m 7.452011 11.132936 l 7.701548 11.258857 l 7.952007 11.134780 l ef -n 7.700165 11.633854 m 7.452011 11.132936 l 7.701548 11.258857 l 7.952007 11.134780 l cp s +n 7.710510 11.633854 m 7.460510 11.133854 l 7.710510 11.258854 l 7.960510 11.133854 l ef +n 7.710510 11.633854 m 7.460510 11.133854 l 7.710510 11.258854 l 7.960510 11.133854 l cp s 0.100000 slw [] 0 sd [] 0 sd @@ -601,19 +515,13 @@ 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 4.650940 22.190100 m 4.650940 24.390100 l 10.690940 24.390100 l 10.690940 22.190100 l f +n 4.650940 22.190100 m 4.650940 24.390100 l 10.700940 24.390100 l 10.700940 22.190100 l f 0.000000 0.000000 0.000000 srgb -n 4.650940 22.190100 m 4.650940 24.390100 l 10.690940 24.390100 l 10.690940 22.190100 l cp s +n 4.650940 22.190100 m 4.650940 24.390100 l 10.700940 24.390100 l 10.700940 22.190100 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 5.395940 22.692600 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div 7.675940 ex sub 22.840100 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(DataProperty) 4.900940 23.660100 m -dup sw 5.540000 exch sub -12 div exch 0.0 exch - gs 1 -1 sc ashow gr +(DataProperty) dup sw 2 div 7.675940 ex sub 23.840100 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd [] 0 sd @@ -631,75 +539,47 @@ 0 slc n 7.675940 22.190100 m 7.339530 22.190100 l 7.339530 19.936700 l 7.536420 19.936700 l s /Courier-latin1 ff 0.560000 scf sf -(Data Constants) 7.439530 20.783400 m -dup sw 4.900000 exch sub -14 div exch 0.0 exch - gs 1 -1 sc ashow gr +(Data Constants) 7.439530 20.913400 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 0 slj 0 slc n 11.062600 12.898000 m 12.164000 12.898000 l 12.164000 17.144000 l 14.958000 17.144000 l s -(given) 12.264000 14.741000 m -dup sw 1.750000 exch sub -5 div exch 0.0 exch - gs 1 -1 sc ashow gr -(n) 11.262600 12.618000 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr -(1) 14.408000 16.864000 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr +/Courier-latin1 ff 0.560000 scf sf +(Given) 12.264000 14.871000 m gs 1 -1 sc sh gr +(n) 11.262600 12.748000 m gs 1 -1 sc sh gr +(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 0 slj 0 slc n 10.061400 18.836700 m 12.164000 18.836700 l 12.164000 17.144000 l 14.958000 17.144000 l s -(given) 12.264000 17.710350 m -dup sw 1.750000 exch sub -5 div exch 0.0 exch - gs 1 -1 sc ashow gr -(0..n) 10.261400 18.556700 m -dup sw 1.400000 exch sub -4 div exch 0.0 exch - gs 1 -1 sc ashow gr -(1) 14.408000 16.864000 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr +/Courier-latin1 ff 0.560000 scf sf +(Given) 12.264000 17.840350 m gs 1 -1 sc sh gr +(0..n) 10.261400 18.686700 m gs 1 -1 sc sh gr +(1) dup sw 14.758000 ex sub 16.994000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n 15.656400 6.140000 m 15.656400 8.340000 l 23.778900 8.340000 l 23.778900 6.140000 l f +n 15.656400 6.140000 m 15.656400 8.340000 l 23.806400 8.340000 l 23.806400 6.140000 l f 0.000000 0.000000 0.000000 srgb -n 15.656400 6.140000 m 15.656400 8.340000 l 23.778900 8.340000 l 23.778900 6.140000 l cp s +n 15.656400 6.140000 m 15.656400 8.340000 l 23.806400 8.340000 l 23.806400 6.140000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) 17.442650 6.642500 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div 19.731400 ex sub 6.790000 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(ParameterMutator) 15.906400 7.610000 m -dup sw 7.622500 exch sub -16 div exch 0.0 exch - gs 1 -1 sc ashow gr +(ParameterMutator) dup sw 2 div 19.731400 ex sub 7.790000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd [] 0 sd 0 slc -n 19.722600 15.993800 m 19.717965 8.826803 l s +n 19.722600 15.993800 m 19.717918 8.826803 l s [] 0 sd 0 slj 0 slc -n 19.717722 8.451803 m 19.968046 8.951642 l 19.717965 8.826803 l 19.468046 8.951965 l ef -n 19.717722 8.451803 m 19.968046 8.951642 l 19.717965 8.826803 l 19.468046 8.951965 l cp s +n 19.717673 8.451803 m 19.968000 8.951640 l 19.717918 8.826803 l 19.468000 8.951967 l ef +n 19.717673 8.451803 m 19.968000 8.951640 l 19.717918 8.826803 l 19.468000 8.951967 l cp s /Courier-latin1 ff 0.560000 scf sf -( Optional) 19.720125 12.026900 m -dup sw 3.150000 exch sub -9 div exch 0.0 exch - gs 1 -1 sc ashow gr +( Optional) 19.720100 12.166900 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb @@ -707,134 +587,95 @@ 0.000000 0.000000 0.000000 srgb n -5.096060 14.242500 m -5.096060 16.442500 l -0.046060 16.442500 l -0.046060 14.242500 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) -4.846060 14.745000 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div -2.571060 ex sub 14.892500 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(LogService) -4.832310 15.712500 m -dup sw 4.522500 exch sub -10 div exch 0.0 exch - gs 1 -1 sc ashow gr +(LogService) dup sw 2 div -2.571060 ex sub 15.892500 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n -8.508560 11.530000 m -8.508560 13.730000 l -0.036060 13.730000 l -0.036060 11.530000 l f +n -8.508560 11.530000 m -8.508560 13.730000 l -0.008560 13.730000 l -0.008560 11.530000 l f 0.000000 0.000000 0.000000 srgb -n -8.508560 11.530000 m -8.508560 13.730000 l -0.036060 13.730000 l -0.036060 11.530000 l cp s +n -8.508560 11.530000 m -8.508560 13.730000 l -0.008560 13.730000 l -0.008560 11.530000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) -6.547310 12.032500 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div -4.258560 ex sub 12.180000 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(PreferencesService) -8.258560 13.000000 m -dup sw 7.972500 exch sub -18 div exch 0.0 exch - gs 1 -1 sc ashow gr +(PreferencesService) dup sw 2 div -4.258560 ex sub 13.180000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n -10.113560 6.160000 m -10.113560 8.360000 l -0.046060 8.360000 l -0.046060 6.160000 l f +n -10.113600 6.160000 m -10.113600 8.360000 l -0.163600 8.360000 l -0.163600 6.160000 l f 0.000000 0.000000 0.000000 srgb -n -10.113560 6.160000 m -10.113560 8.360000 l -0.046060 8.360000 l -0.046060 6.160000 l cp s +n -10.113600 6.160000 m -10.113600 8.360000 l -0.163600 8.360000 l -0.163600 6.160000 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) -7.354810 6.662500 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div -5.138600 ex sub 6.810000 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(DataConversionService) -9.863560 7.630000 m -dup sw 9.567500 exch sub -21 div exch 0.0 exch - gs 1 -1 sc ashow gr +(DataConversionService) dup sw 2 div -5.138600 ex sub 7.810000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 1.000000 1.000000 1.000000 srgb -n -8.008560 8.867500 m -8.008560 11.067500 l -0.056060 11.067500 l -0.056060 8.867500 l f +n -8.008560 8.867500 m -8.008560 11.067500 l -0.208560 11.067500 l -0.208560 8.867500 l f 0.000000 0.000000 0.000000 srgb -n -8.008560 8.867500 m -8.008560 11.067500 l -0.056060 11.067500 l -0.056060 8.867500 l cp s +n -8.008560 8.867500 m -8.008560 11.067500 l -0.208560 11.067500 l -0.208560 8.867500 l cp s /Courier-latin1 ff 0.560000 scf sf -(<<interface>>) -6.307310 9.370000 m -dup sw 4.550000 exch sub -13 div exch 0.0 exch - gs 1 -1 sc ashow gr +(<<interface>>) dup sw 2 div -4.108560 ex sub 9.517500 m gs 1 -1 sc sh gr /Helvetica-Bold-latin1 ff 0.700000 scf sf -(GUIBuilderService) -7.758560 10.337500 m -dup sw 7.452500 exch sub -17 div exch 0.0 exch - gs 1 -1 sc ashow gr +(GUIBuilderService) dup sw 2 div -4.108560 ex sub 10.517500 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 0 slj 0 slc n 0.002994 7.260000 m 2.047600 7.260000 l 2.047600 12.896000 l 4.410510 12.896000 l s /Courier-latin1 ff 0.560000 scf sf -(Provides Access) 2.147600 9.798000 m -dup sw 5.250000 exch sub -15 div exch 0.0 exch - gs 1 -1 sc ashow gr -(1) 0.202994 6.980000 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr -(n) 3.860510 12.616000 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr +(Provides Access) 2.147600 9.928000 m gs 1 -1 sc sh gr +(1) 0.202994 7.110000 m gs 1 -1 sc sh gr +(n) dup sw 4.210510 ex sub 12.746000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd [] 0 sd 0 slj 0 slc -n 0.053166 10.164762 m -1.041534 11.204562 l 0.052466 11.204562 l ef -n 0.053166 10.164762 m -1.041534 11.204562 l 0.052466 11.204562 l cp s +n 0.053166 10.164800 m -1.041530 11.204600 l 0.052466 11.204600 l ef +n 0.053166 10.164800 m -1.041530 11.204600 l 0.052466 11.204600 l cp s 0.100000 slw [] 0 sd [] 0 sd 0 slj 0 slc -n 0.043882 12.838512 m -1.050818 13.878312 l 0.043182 13.878312 l ef -n 0.043882 12.838512 m -1.050818 13.878312 l 0.043182 13.878312 l cp s +n 0.043882 12.838500 m -1.050820 13.878300 l 0.043182 13.878300 l ef +n 0.043882 12.838500 m -1.050820 13.878300 l 0.043182 13.878300 l cp s 0.100000 slw [] 0 sd [] 0 sd 0 slj 0 slc -n 0.052632 15.554762 m -1.042068 16.594562 l 0.051932 16.594562 l ef -n 0.052632 15.554762 m -1.042068 16.594562 l 0.051932 16.594562 l cp s +n 0.052632 15.554800 m -1.042070 16.594600 l 0.051932 16.594600 l ef +n 0.052632 15.554800 m -1.042070 16.594600 l 0.051932 16.594600 l cp s 0.100000 slw [] 0 sd [] 0 sd 0 slj 0 slc -n 0.061382 7.458512 m -1.033318 8.498312 l 0.060682 8.498312 l ef -n 0.061382 7.458512 m -1.033318 8.498312 l 0.060682 8.498312 l cp s +n 0.061382 7.458510 m -1.033320 8.498310 l 0.060682 8.498310 l ef +n 0.061382 7.458510 m -1.033320 8.498310 l 0.060682 8.498310 l cp s 0.100000 slw [] 0 sd 0 slj 0 slc -n -0.006049 9.967500 m 2.043610 9.967500 l 2.043610 12.896000 l 4.361082 12.896000 l s -(1) 0.193951 9.687500 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr +n -0.006049 9.967500 m 2.043610 9.967500 l 2.043610 12.896000 l 4.361080 12.896000 l s +/Courier-latin1 ff 0.560000 scf sf +(1) 0.193951 9.817500 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 0 slj 0 slc n 0.011290 12.630000 m 2.043610 12.630000 l 2.043610 12.896000 l 4.410510 12.896000 l s -(1) 0.211290 12.350000 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr +/Courier-latin1 ff 0.560000 scf sf +(1) 0.211290 12.480000 m gs 1 -1 sc sh gr 0.100000 slw [] 0 sd 0 slj 0 slc -n 0.003286 15.342500 m 2.043610 15.342500 l 2.043610 12.896000 l 4.361082 12.896000 l s -(1) 0.203286 15.062500 m -dup sw 0.350000 exch sub -1 div exch 0.0 exch - gs 1 -1 sc ashow gr +n 0.003286 15.342500 m 2.043610 15.342500 l 2.043610 12.896000 l 4.361080 12.896000 l s +/Courier-latin1 ff 0.560000 scf sf +(1) 0.203286 15.192500 m gs 1 -1 sc sh gr showpage Modified: trunk/core/org.cishell.docs/src/img/cishellInteraction.pdf =================================================================== (Binary files differ) Modified: trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-03-13 15:51:59 UTC (rev 655) +++ trunk/core/org.cishell.docs/src/specification/tex/algorithms.tex 2008-03-14 15:13:09 UTC (rev 656) @@ -26,10 +26,10 @@ algorithm. It is the central and most important concept. Algorithms are fully defined and self-contained bits of execution. They can do many things from data conversion, data analysis, and can even spawn whole external programs if needed. -Algorithms are very well defined black boxes in that what can come into and out -of the algorithm is specified in each algorithm's service metadata and -associated \class{MetaTypeProvider}. Other than that, CIShell makes no attempt -to understand the algorithm. +Algorithms are well defined black boxes in that their input and output is +specified in each algorithm's service metadata and associated +\class{MetaTypeProvider}. Other than that, CIShell makes no attempt to understand +the algorithm. \subsubsection{Essentials} \begin{itemize} @@ -109,7 +109,7 @@ such as the format of each \class{Data} item to be input and output is provided. In addition to the mechanics of the algorithms, data such as the authors, label, urls, citation references, and description are provided. This metadata can be -searched by anyone using OSGi's service registry to find relevant algorithms. +searched by anyone to find relevant algorithms using OSGi's service registry. Each standard metadata element required by the CIShell specification is defined below and in the interface \class{AlgorithmProperty}. It defines each key string @@ -126,7 +126,7 @@ \begin{quote} \begin{description} - \item[Example 1:] service.pid = org.cishell.my.algorithm.MyAlgorithm + \item[Example 1:] service.pid = org.my.algorithm.MyAlgorithm \end{description} \end{quote} @@ -286,8 +286,8 @@ \subsection*{conversion} For converter algorithms, this metadata element specifies if any data is lost in the conversion. Possible values are ``lossy'' and ``lossless''. A -description of what type of information is lost should be explained in the -description. +description of what type of information is lost should be given in the +``description'' metadata field. \begin{quote} \begin{description} @@ -301,8 +301,8 @@ \begin{quote} \begin{description} - \item[Example 1:] authors = Bruce Herr - \item[Example 2:] authors = Bruce Herr, Weixia Huang, Katy Borner + \item[Example 1:] authors = Bruce W. Herr II + \item[Example 2:] authors = Bruce W. Herr II, Weixia Huang, Katy Borner \end{description} \end{quote} @@ -312,8 +312,8 @@ \begin{quote} \begin{description} - \item[Example 1:] implementers = Bruce Herr - \item[Example 2:] implementers = Bruce Herr, Weixia Huang, Katy Borner + \item[Example 1:] implementers = Bruce W. Herr II + \item[Example 2:] implementers = Bruce W. Herr II, Weixia Huang, Katy Borner \end{description} \end{quote} @@ -324,8 +324,8 @@ \begin{quote} \begin{description} - \item[Example 1:] integrators = Bruce Herr - \item[Example 2:] integrators = Bruce Herr, Weixia Huang, Katy Borner + \item[Example 1:] integrators = Bruce W. Herr II + \item[Example 2:] integrators = Bruce W. Herr II, Weixia Huang, Katy Borner \end{description} \end{quote} @@ -345,10 +345,10 @@ \begin{quote} \begin{description} - \item[Example 1:] reference = Herr, Bruce W., Huang, Weixia, Penumarthy, - Shashikant, Börner, Katy. (2007) Designing Highly Flexible and Usable + \item[Example 1:] reference = Herr, Bruce W. II, Huang, Weixia, Penumarthy, + Shashikant, B\"{o}rner, Katy. (2007) Designing Highly Flexible and Usable Cyberinfrastructures for Convergence. In William S. Bainbridge and Mihail C. - Roco (Eds.) Progress in Convergence – Technologies for Human Wellbeing. + Roco (Eds.) Progress in Convergence - Technologies for Human Wellbeing. Annals of the New York Academy of Sciences, Boston, MA, volume 1093, pp. 161-179. \end{description} \end{quote} @@ -359,7 +359,7 @@ \begin{quote} \begin{description} - \item[Example 1:] reference\_url = http://cishell.org/papers/06-cishell.pdf + \item[Example 1:] reference\_url = http://cishell.org/papers/07-cishell.pdf \end{description} \end{quote} Modified: trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex 2008-03-13 15:51:59 UTC (rev 655) +++ trunk/core/org.cishell.docs/src/specification/tex/guidefinition.tex 2008-03-14 15:13:09 UTC (rev 656) @@ -30,11 +30,11 @@ is not tied to any specific UI, so it can be reused depending on the context (desktop application, web application, command line, etc.). -\class{MetaTypeProvider} is an interface defined in the OSGi R4 Specification -Service Compendium as part of the ``Metatype Service Specification''. A -\class{MetaTypeProvider} can be thought of as a collection of UIs. Each UI is -called an \class{ObjectClassDefinition}, which provides a UI name and description -and is a collection of parameters. Each parameter is an +\class{MetaTypeProvider} is a Java interface defined in the OSGi R4 Specification +Service Compendium as part of the ``Metatype Service Specification,'' section +105. A \class{MetaTypeProvider} can be thought of as a collection of UIs. Each UI +is called an \class{ObjectClassDefinition}, which provides a UI name and +description and is a collection of parameters. Each parameter is an \class{AttributeDefinition} which includes the type, label, description, default value, and range of valid values. Drop-down boxes can also be defined by using option labels and values with the \class{AttributeDefinition}. OSGi's Modified: trunk/core/org.cishell.docs/src/specification/tex/introduction.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-03-13 15:51:59 UTC (rev 655) +++ trunk/core/org.cishell.docs/src/specification/tex/introduction.tex 2008-03-14 15:13:09 UTC (rev 656) @@ -41,6 +41,9 @@ (IVC). Thanks go out to all those who have used or contributed to IVC, CIShell, and the Network Workbench (the first project to use CIShell). +Development of the Cyberinfrastructure Shell was funded by grants two from the +National Science Foundation: NSF IIS-0238261 and NSF IIS-0513650. + \section{CIShell Platform Overview} The CIShell Platform consists of Java interface definitions for algorithms, data, @@ -81,8 +84,8 @@ \section{Conventions and Terms} In this specification, algorithms are referred to in three different contexts. An -abstract algorithm, is the pure idea of the algorithm with no actual source code. -It is a series of steps sometimes put into psuedo-code and often published in +abstract algorithm is the pure idea of the algorithm with no actual source code. +It is a series of steps sometimes put into pseudo-code and often published in academic journals. An \class{Algorithm} with a capital A refers to the Java class called Algorithm. And finally, an algorithm with a lowercase A refers to the bundle of code and metadata that encompasses an algorithm written to work with Modified: trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex 2008-03-13 15:51:59 UTC (rev 655) +++ trunk/core/org.cishell.docs/src/specification/tex/osgidependencies.tex 2008-03-14 15:13:09 UTC (rev 656) @@ -27,29 +27,29 @@ \subsection*{Required Services} \begin{description} - \item[Metatype Service] as described in OSGi section 105 ``Metatype Service - Specification,'' this service is used by CIShell to find + \item[Metatype Service] is described in OSGi section 105 ``Metatype Service + Specification.'' This service is used by CIShell to find \class{MetaTypeProviders} for user interface specification, user-adjustable preferences, and input parameters. It also provides an XML format for automatically generating \class{MetaTypeProvider}s which the \class{MetaTypeService} harvests for use. - \item[Log Service] as described in OSGi section 101 ``Log Service - Specification,'' this service is used as a universal logging system for + \item[Log Service] is described in OSGi section 101 ``Log Service + Specification.'' This service is used as a universal logging system for algorithms and services. See chapter \ref{logService} for more details. - \item[Preferences Service] as described in OSGi section 106 ``Preferences - Service Specification,'' this service is used as a universal preference + \item[Preferences Service] is described in OSGi section 106 ``Preferences + Service Specification.'' This service is used as a universal preference storage system for algorithms and services. See chapter \ref{preferencesService} for more details. - \item[Configuration Admin Service] as described in OSGi section 104 - ``Configuration Admin Service Specification,'' this service is used as a + \item[Configuration Admin Service] is described in OSGi section 104 + ``Configuration Admin Service Specification.'' This service is used as a manager/provider of configuration information for bundles and services. It is - very useful for meeting the User Adjustable Preferences (section + useful for meeting the User Adjustable Preferences (section \ref{userPrefsSpec}) requirements. \end{description} \subsection*{Recommended Services} \begin{description} - \item[Declarative Services] as described in OSGi section 112 ``Declarative - Services Specification,'' this service can be used by CIShell algorithms to + \item[Declarative Services] is described in OSGi section 112 ``Declarative + Services Specification.'' This service can be used by CIShell algorithms to simplify algorithm service registration and for finding necessary auxilary services. \end{description} Modified: trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex 2008-03-13 15:51:59 UTC (rev 655) +++ trunk/core/org.cishell.docs/src/specification/tex/useradjustableprefs.tex 2008-03-14 15:13:09 UTC (rev 656) @@ -38,7 +38,7 @@ \class{ManagedService}. See section \ref{GUISpec} for more information. \subsubsection*{Designate an OCD a Persistent ID (PID)} Then they must designate -the \class{ObjectClassDefinition} a persistent id (PID). The PID can be +the \class{ObjectClassDefinition} a unique persistent id (PID). The PID can be designated in two ways. The simplest way is by following the convention of creating a string with the associated service's ``service.pid'' and appending either ``.prefs.local'' or ``.prefs.global''. The other way is to designate @@ -65,15 +65,15 @@ \subsubsection*{Receiving Preference Data} To be notified of changes to local or global preferences, the service must implement \class{org.\-osgi.\-service.\-cm.\-ManagedService} and set in their service -metadata ``receive\_prefs=true''. When either the local or global preferences are updated, -the updated method will be passed a \class{Dictionary} of all of the id/value -pairs, including the updated ones. Local preferences will have the same ids as -the \class{AttributeDefinition}s (AD) defined in the associated OCD. The local -preferences will also have an additional id ``Bundle-Version", which contains the -version of the service's associated bundle that was used when the preference data -was last updated. Global preferences will have the same ids (plus a -``Bundle-Version'' id analagous to local preference's) from their OCD's ADs +metadata ``receive\_prefs=true''. When either the local or global preferences are +updated, the updated method will be passed a \class{Dictionary} of all of the +id/value pairs, including the updated ones. Local preferences will have the same +ids as the \class{AttributeDefinition}s (AD) defined in the associated OCD. The +local preferences will also have an additional id ``Bundle-Version", which +contains the version of the service's associated bundle that was used when the +preference data was last updated. Global preferences will have the same ids (plus +a ``Bundle-Version'' id analagous to local preference's) from their OCD's ADs prefixed by the PID of the published global preference. In this way, all global preferences published in the system will be available to anyone receiving -preference data. Note that one does not have to publish any preferences to -receive just global preference data. +preference data. Note that global preferences can be received without publishing +preferences. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bh...@us...> - 2008-03-14 18:54:33
|
Revision: 658 http://cishell.svn.sourceforge.net/cishell/?rev=658&view=rev Author: bh2 Date: 2008-03-14 11:54:21 -0700 (Fri, 14 Mar 2008) Log Message: ----------- Made some changes so that latex can output dvi and so i can use some tools to convert to html. things seem to be working okay except for the images. It is not liking converting the pdf images to pngs for some reason... Modified Paths: -------------- trunk/core/org.cishell.docs/src/specification/main.tex trunk/core/org.cishell.docs/src/texdoclet/src/org/wonderly/doclets/TexDoclet.java Modified: trunk/core/org.cishell.docs/src/specification/main.tex =================================================================== --- trunk/core/org.cishell.docs/src/specification/main.tex 2008-03-14 16:09:28 UTC (rev 657) +++ trunk/core/org.cishell.docs/src/specification/main.tex 2008-03-14 18:54:21 UTC (rev 658) @@ -16,16 +16,12 @@ %% % -\documentclass[pdftex,11pt,letterpaper]{report} -\usepackage[top=1in, left=1in, right=1in, bottom=1in]{geometry} -\usepackage[pdftex]{graphicx} -\DeclareGraphicsExtensions{.pdf,.png,.jpg,.mps,.eps} -\usepackage{color} +\documentclass[11pt,letterpaper]{report} -\usepackage{../mystyle} -\input{./tex/api.tex} -\packagesheader{} +\usepackage{ifpdf} +\ifpdf %PDF Specific Setup +\usepackage[pdftex]{graphicx} \usepackage[pdftex]{hyperref} \hypersetup{ pdftitle={Cyberinfrastructure Shell (CIShell) - Core Specification 1.0}, @@ -33,8 +29,19 @@ pdfauthor={Bruce W. Herr II}, pdfnewwindow=true% links in new window } +\else %DVI Specific Setup +\usepackage{graphicx} +\usepackage{hyperref} +\fi +\usepackage[top=1in, left=1in, right=1in, bottom=1in]{geometry} +\DeclareGraphicsExtensions{.pdf,.png,.jpg,.mps,.eps} +\usepackage{color} + +\usepackage{../mystyle} +\input{./tex/api.tex} + \raggedright \begin{document} Modified: trunk/core/org.cishell.docs/src/texdoclet/src/org/wonderly/doclets/TexDoclet.java =================================================================== --- trunk/core/org.cishell.docs/src/texdoclet/src/org/wonderly/doclets/TexDoclet.java 2008-03-14 16:09:28 UTC (rev 657) +++ trunk/core/org.cishell.docs/src/texdoclet/src/org/wonderly/doclets/TexDoclet.java 2008-03-14 18:54:21 UTC (rev 658) @@ -116,7 +116,7 @@ // os.println("\\documentclass[11pt]{"+docclass+"}" ); - os.println("\\newcommand{\\packagesheader}{"); + //os.println("\\newcommand{\\packagesheader}{"); os.println("%%% Start_Header"); os.println("\\def\\bl{\\mbox{}\\newline\\mbox{}\\newline{}}"); os.println("\\usepackage{ifthen}"); @@ -200,7 +200,7 @@ os.println("\\usepackage{color}"); os.println("%%% End_Header"); - os.println("}\n\n"); + //os.println("}\n\n"); // os.println("\\packagesheader{}"); /* This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |