diff options
Diffstat (limited to 'CIAO/docs/tutorials/Quoter/Simple/03.html')
-rw-r--r-- | CIAO/docs/tutorials/Quoter/Simple/03.html | 694 |
1 files changed, 0 insertions, 694 deletions
diff --git a/CIAO/docs/tutorials/Quoter/Simple/03.html b/CIAO/docs/tutorials/Quoter/Simple/03.html deleted file mode 100644 index ee2cafc370a..00000000000 --- a/CIAO/docs/tutorials/Quoter/Simple/03.html +++ /dev/null @@ -1,694 +0,0 @@ -<!-- $Id$ --> -<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" - xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:p="urn:schemas-microsoft-com:office:powerpoint" - xmlns:oa="urn:schemas-microsoft-com:office:activation" xmlns:st1="urn:schemas-microsoft-com:office:smarttags" - xmlns="http://www.w3.org/TR/REC-html40"> - <head> - <title>Getting Started</title> - <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> - <meta name="ProgId" content="Word.Document"> - <meta name="Generator" content="Microsoft Word 11"> - <meta name="Originator" content="Microsoft Word 11"> - <link rel="File-List" href="03_files/filelist.xml"> - <link rel="Edit-Time-Data" href="03_files/editdata.mso"> <!--[if !mso]> -<STYLE> -v\:* {behavior:url(#default#VML);} -o\:* {behavior:url(#default#VML);} -w\:* {behavior:url(#default#VML);} -.shape {behavior:url(#default#VML);} -</STYLE> -<![endif]--> - <o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="place" /> - <o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="PlaceType" /> - <o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="PlaceName" /> <!--[if gte mso 9]><xml> - <o:DocumentProperties> - <o:Author>Abdullah Sowayan</o:Author> - <o:LastAuthor>Abdullah Sowayan</o:LastAuthor> - <o:Revision>13</o:Revision> - <o:TotalTime>54</o:TotalTime> - <o:Created>2006-10-09T22:26:00Z</o:Created> - <o:LastSaved>2007-03-08T01:18:00Z</o:LastSaved> - <o:Pages>1</o:Pages> - <o:Words>2585</o:Words> - <o:Characters>14741</o:Characters> - <o:Company>Maritime Systems & Sensors</o:Company> - <o:Lines>122</o:Lines> - <o:Paragraphs>34</o:Paragraphs> - <o:CharactersWithSpaces>17292</o:CharactersWithSpaces> - <o:Version>11.5606</o:Version> - </o:DocumentProperties> -</xml><![endif]--> <!--[if gte mso 9]><xml> - <w:WordDocument> - <w:ValidateAgainstSchemas/> - <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> - <w:IgnoreMixedContent>false</w:IgnoreMixedContent> - <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> - <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> - </w:WordDocument> -</xml><![endif]--> <!--[if gte mso 9]><xml> - <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> - </w:LatentStyles> -</xml><![endif]--> <!--[if !mso]> -<OBJECT id=ieooui classid=clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D></OBJECT> -<STYLE> -st1\:*{behavior:url(#ieooui) } -</STYLE> -<![endif]--> - <style> <!-- /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} - h3 {mso-margin-top-alt:auto; margin-right:0in; mso-margin-bottom-alt:auto; margin-left:0in; mso-pagination:widow-orphan; mso-outline-level:3; font-size:13.5pt; font-family:"Times New Roman"; font-weight:bold;} - a:link, span.MsoHyperlink {color:#000FFF; text-decoration:underline; text-underline:single;} - a:visited, span.MsoHyperlinkFollowed {color:#FF0F0F; text-decoration:underline; text-underline:single;} - p {mso-margin-top-alt:auto; margin-right:0in; mso-margin-bottom-alt:auto; margin-left:0in; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} - address {margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; font-style:italic;} - code {font-family:"Courier New"; mso-ascii-font-family:"Courier New"; mso-fareast-font-family:"Times New Roman"; mso-hansi-font-family:"Courier New"; mso-bidi-font-family:"Courier New";} - kbd {font-family:"Courier New"; mso-ascii-font-family:"Courier New"; mso-fareast-font-family:"Times New Roman"; mso-hansi-font-family:"Courier New"; mso-bidi-font-family:"Courier New";} - pre {margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt; font-size:10.0pt; font-family:"Courier New"; mso-fareast-font-family:"Times New Roman";} - @page Section1 {size:8.5in 11.0in; margin:1.0in 1.25in 1.0in 1.25in; mso-header-margin:.5in; mso-footer-margin:.5in; mso-paper-source:0;} - div.Section1 {page:Section1;} - /* List Definitions */ @list l0 {mso-list-id:154345203; mso-list-template-ids:-289649766;} - @list l0:level1 {mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l0:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l0:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l0:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l0:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l0:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l0:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l0:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l0:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l1 {mso-list-id:201526982; mso-list-template-ids:-336678638;} - @list l1:level1 {mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l1:level2 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:"Courier New"; mso-bidi-font-family:"Times New Roman";} - @list l1:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l1:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l1:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l1:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l1:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l1:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l1:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l2 {mso-list-id:777020325; mso-list-template-ids:-483995422;} - @list l2:level1 {mso-level-number-format:bullet; mso-level-text:\F0B7; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} - @list l2:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l2:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l2:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l2:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l2:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l2:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l2:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l2:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l3 {mso-list-id:907959882; mso-list-template-ids:323885252;} - @list l3:level1 {mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l3:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l3:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l3:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l3:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l3:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l3:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l3:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l3:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l4 {mso-list-id:1065254837; mso-list-template-ids:1089662206;} - @list l4:level1 {mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l4:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l4:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l4:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l4:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l4:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l4:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l4:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l4:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l5 {mso-list-id:1084494006; mso-list-template-ids:-1504120978;} - @list l5:level1 {mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l5:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l5:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l5:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l5:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l5:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l5:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l5:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l5:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l6 {mso-list-id:1153565371; mso-list-template-ids:-169696680;} - @list l6:level1 {mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l6:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l6:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l6:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l6:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l6:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l6:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l6:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l6:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l7 {mso-list-id:1832599161; mso-list-template-ids:-966728002;} - @list l7:level1 {mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l7:level2 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:"Courier New"; mso-bidi-font-family:"Times New Roman";} - @list l7:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l7:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l7:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l7:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l7:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l7:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l7:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l8 {mso-list-id:1956401533; mso-list-template-ids:-909756440;} - @list l8:level1 {mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l8:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l8:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l8:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l8:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l8:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l8:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l8:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l8:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l9 {mso-list-id:2012949130; mso-list-type:hybrid; mso-list-template-ids:990837084 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;} - @list l9:level1 {mso-level-tab-stop:39.0pt; mso-level-number-position:left; margin-left:39.0pt; text-indent:-.25in;} - @list l9:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l9:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l9:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l9:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l9:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l9:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l9:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} - @list l9:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l8:level1 lfo5 {mso-level-start-at:4;} - @list l1:level2 lfo7 {mso-level-number-format:arabic; mso-level-numbering:continue; mso-level-text:"%2\."; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0in; text-indent:0in; mso-ansi-font-size:10.0pt; font-family:"Courier New"; mso-bidi-font-family:"Times New Roman";} - ol {margin-bottom:0in;} - ul {margin-bottom:0in;} - --></style> - <!--[if gte mso 10]> -<style> - /* Style Definitions */ - table.MsoNormalTable - {mso-style-name:"Table Normal"; - mso-tstyle-rowband-size:0; - mso-tstyle-colband-size:0; - mso-style-noshow:yes; - mso-style-parent:""; - mso-padding-alt:0in 5.4pt 0in 5.4pt; - mso-para-margin:0in; - mso-para-margin-bottom:.0001pt; - mso-pagination:widow-orphan; - font-size:10.0pt; - font-family:"Times New Roman"; - mso-ansi-language:#0400; - mso-fareast-language:#0400; - mso-bidi-language:#0400;} -</style> -<![endif]--> <!-- $Id$ --> <!--[if gte mso 9]><xml> - <o:shapedefaults v:ext="edit" spidmax="6146"/> -</xml><![endif]--> <!--[if gte mso 9]><xml> - <o:shapelayout v:ext="edit"> - <o:idmap v:ext="edit" data="1"/> - </o:shapelayout></xml><![endif]--> - </head> - <body bgcolor="white" lang="EN-US" link="#000fff" vlink="#ff0f0f" style='tab-interval: -.5in'> - <div class="Section1"> - <h3 align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'>Step 3: -Package your components<o:p></o:p></span></h3> - <h3 align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'><img width="572" height="358" id="_x0000_i1025" src="images/step3.jpg"><o:p></o:p> - </span></h3> - <p class="MsoNormal"><b><span style='COLOR:red'><o:p> </o:p> - </span></b></p> - <p class="MsoNormal"><b>Brief Introduction to CosMIC:<o:p></o:p></b></p> - <p class="MsoNormal" style='mso-layout-grid-align:none'>The Component Synthesis - using Model Integrated Computing (CoSMIC) project is a MDA toolset being - developed by the Institute for Software Integrated Systems (ISIS) at - <st1:place w:st="on"> - <st1:PlaceName w:st="on">Vanderbilt</st1:PlaceName> - <st1:PlaceType w:st="on">University</st1:PlaceType> - </st1:place> - to:</p> - <p class="MsoNormal" style='MARGIN-LEFT:39pt;TEXT-INDENT:-0.25in;tab-stops:list 39.0pt;mso-layout-grid-align:none;mso-list:l9 level1 lfo1'><![if - !supportLists]><span style='mso-list:Ignore'>1.<span style="FONT:7pt 'Times New Roman'"> -</span></span><![endif]><i>Model and</i> <i>analyze </i>distributed real-time and embedded - application functionality and QoS requirements.</p> - <p class="MsoNormal" style='MARGIN-LEFT:39pt;TEXT-INDENT:-0.25in;tab-stops:list 39.0pt;mso-layout-grid-align:none;mso-list:l9 level1 lfo1'><![if - !supportLists]><span style='mso-list:Ignore'>2.<span style="FONT:7pt 'Times New Roman'"> -</span></span><![endif]><i>Synthesize</i> CCM-specific deployment metadata required to deliver - end-to-end QoS to DRE applications.</p> - <p class="MsoNormal" style='mso-layout-grid-align:none'><o:p> </o:p></p> - <p class="MsoNormal" style='mso-layout-grid-align:none'>The CoSMIC toolsuite - provides modeling of DRE systems, their QoS requirements, and QoS adaptation - policies used for DRE application QoS management. The component behavior, their - interactions, and QoS requirements are modeled using a domain specific modeling - language that adheres to - <span style='COLOR:black'>the <a href="http://www.omg.org/cgi-bin/doc?ptc/2003-07-08">OMG - Deployment & Configuration (D&C) specification (ptc/2003-07-08)</a></span>. - CoSMIC enables modeling the standards-based CCM components. - </p> - <p class="MsoNormal" style='mso-layout-grid-align:none'><o:p> </o:p></p> - <p class="MsoNormal" style='mso-layout-grid-align:none'>Hand-writing the required - XML descriptors to configure our components is tedious and error prone. We - therefore utilize CosMIC (we specifically use a subset of CosMIC called PICML, - which stands for Platform-Independent Component Modeling Language) to generate - the bulk of descriptors for us.</p> - <p class="MsoNormal" style='mso-layout-grid-align:none'><o:p> </o:p></p> - <p class="MsoNormal" style='mso-layout-grid-align:none'>For more information on - CosMIC, please refer to the following article:</p> - <p class="MsoNormal" style='mso-layout-grid-align:none'><span style='mso-bidi-font-weight:bold'><a href="http://www.cs.wustl.edu/~schmidt/PDF/mamad2003.pdf">CoSMIC: - An MDA Generative Tool for Distributed Real-time and Embedded Applications</a>.<o:p></o:p></span></p> - <p class="MsoNormal" style='mso-layout-grid-align:none'><span style='mso-bidi-font-weight:bold'><o:p> </o:p> - </span></p> - <div class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'> - <hr size="2" width="100%" align="center"> - </span></div> - <p class="MsoNormal" style='mso-layout-grid-align:none'><span style='mso-bidi-font-weight:bold'><o:p> </o:p> - </span></p> - <p class="MsoNormal"><b><span style='COLOR:black'>Importing IDL to PICML</span></b><span style='COLOR:black'><br> -<br> - To quick start our Stock Quoter modeling process in GME, CoSMIC -introduces <em>idl_to_picml</em> , which is an executable program that imports -the IDL files you just created into PICML.<o:p></o:p></span></p> - <ol start="1" type="1"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l3 level1 lfo2'> - Make sure <code> - <span style='FONT-SIZE:10pt'>%COSMIC_ROOT%\bin</span></code> is included in - the PATH variable, e.g., c:\Program Files\ISIS\CoSMIC\bin.<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l3 level1 lfo2'> - Open a command prompt, run VCVARS32.BAT from the MSVC .NET folder if you - haven't done so. It will set the environment for using Microsoft Visual Studio - .NET tools so that <i>idl_to_picml</i> works properly.<br> - in my machine, VCVARS32.bat is in C:\Program Files\Microsoft Visual Studio .NET - 2003\Vc7\bin<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l3 level1 lfo2'> - In the same command prompt, change directory to <code> - <span style='FONT-SIZE:10pt'>MyQuoter\</span></code>, and type the - following command:<br> - > <kbd> - <span style='FONT-SIZE:10pt'> - idl_to_picml -x MyQuoter -r . </span></kbd><br> - <em>idl_to_picml</em> will parse your IDL files and generated a <code> - <span style='FONT-SIZE:10pt'>MyQuoter.xme</span></code> file in the <code> - <span style='FONT-SIZE:10pt'>MyQuoter</span></code> directory. Note that if - -x option is not used, the default xme file name will be <code> - <span style='FONT-SIZE:10pt'>PICML_default_xme_file.xme.</span></code><br> - <LI class="MsoNormal" style="COLOR: black; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; tab-stops: list .5in; mso-list: l3 level1 lfo2"> - Start GME, select <strong>File->Import xml..</strong>, and choose the xme - file just generated. You should be able to see an imported PICML model similar - to the one shown in Figure 2.<o:p></o:p> - </LI> - </ol> - <p class="MsoNormal"><span style='COLOR:black'><o:p> </o:p> - </span></p> - <p class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'><img border="0" width="960" height="719" id="_x0000_i1027" src="images/fig2.jpg"><br> -<br> -Figure 2<o:p></o:p></span></p> - <p><span style='COLOR:black'> In the Browser of the generated model, the <em>PredefinedTypes</em> -folder contains a bunch of atomic datatype elements that will be referenced by -other modeling parts later. You don't have to worry about them for now. The -models in <em>InterfaceDefinitions</em> folder are the PICML representations -ofthe IDL files you just imported. Double-click to open <em>Broker</em>, it -will show you a white, document-like entity which represents a -<<FileRef>> instance and a yellow box-shaped entity representing a -<<Package>> instance. Their equivalent representations in IDL files -are "#include" and "module" respectively. Figure 3 gives -you a clear view of GME representation of all the 3 idl files created. We will -cover the other folders in the next section.<o:p></o:p></span></p> - <p class="MsoNormal" align="center" style='MARGIN-BOTTOM:12pt;TEXT-ALIGN:center'><span style='COLOR:black'><img border="0" width="218" height="364" id="_x0000_i1028" src="images/fig3.jpg"><br> -<br> -Figure 3<o:p></o:p></span></p> - <p class="MsoNormal" style='MARGIN-BOTTOM:12pt'><span style='COLOR:black'>Now -we are ready to model the rest of the Stock Quoter systems.<br> -<br style='mso-special-character:line-break'><![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'><![endif]><o:p></o:p></span></p> - <div class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'> - <hr size="2" width="100%" align="center"> - </span></div> - <h3>Building Stock Quoter system in PICML<span style='COLOR:black'><o:p></o:p> - </span></h3> - <p><span style='COLOR:black'>This section describes modeling the Quoter -application using PICML. If you have trouble producing a functioning model from -this tutorial, please see the, <a href="Model/Quoter.xme">pre-built Quoter model</a> which is provided for your reference. This model contains all -elements created as part of this tutorial.<o:p></o:p></span></p> - <div> - <p class="MsoNormal"><strong><span style='COLOR:black'>Note:</span></strong><span style='COLOR:black'> To import an XML file in GME, select <em>File->Import - XML..</em> from GME and choose your XML model<o:p></o:p></span></p> - </div> - <p><span style='COLOR:black'>The PICML paradigm is designed for the <a href="http://www.omg.org/cgi-bin/doc?ptc/2003-07-08">OMG - Deployment & Configuration (D&C) specification (ptc/2003-07-08)</a>, so the modeling process -is straightforward if you are familiar with the specification. Please see the <a href="../../../releasenotes/dance.html">DAnCE - project</a> for more -information. For those who hate specification (including me, :-)), an <a href="http://www.cs.wustl.edu/%7Eschmidt/PDF/DAnCE.pdf">overview - of D&C</a> -and as well as a <a href="http://www.cs.wustl.edu/%7Eschmidt/OMG-CCM-Tutorial.ppt">tutorial of D&C - and CCM</a> can help to reduce the learning curve. In addition, it is -also helpful to read through Chapter 32 of TAO's Developer's Guide 1.4a (CIAO -and CCM) which thoroughly describes the various descriptors required for a -component (*.iad, *.ccd, *.cid, etc). <o:p></o:p></span></p> - <h3><span style='COLOR:black'>Table of Contents<o:p></o:p></span></h3> - <ul type="disc"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l2 level1 lfo3'> - <a href="#1">ImplementationArtifacts</a><o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l2 level1 lfo3'> - <a href="#2">ComponentImplementations</a><o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l2 level1 lfo3'> - <a href="#3">ComponentPackages</a><o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l2 level1 lfo3'> - <a href="#4">PackageConfiguration</a><o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l2 level1 lfo3'> - <a href="#5">TopLevelPackage</a><o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l2 level1 lfo3'> - <a href="#6">Targets</a><o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l2 level1 lfo3'> - <a href="#7">DeploymentPlan</a><o:p></o:p></li> - </ul> - <div class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'> - <hr size="2" width="100%" align="center"> - </span></div> - <p><span style='COLOR:black'>The complete PICML Quoter model consists of -modeling elements distributed across various folders. If you used <em>idl_to_picml</em> -to generate the initial model, you will see that it has created all these -folders and some of the tedious boilerplate modeling for us. The rest of the -section will explain the purpose of each folder as well as the modeling -entities contained in these folders. We will also show how to model some of the -folders that have to be done by hand.<o:p></o:p></span></p> - <p><b><span style='BACKGROUND:silver;COLOR:red;FONT-VARIANT:small-caps;mso-highlight:silver'>Important:</span></b><span style='BACKGROUND:silver;COLOR:black;mso-highlight:silver'> The interpreters that generate deployment -artifacts expect very strict constraints in the model. When you finish your -model, and any time you wish to generate anything, it is a good idea to check -constraints by clicking on <em>File->Check->Check All</em> in GME. This -will help you find many logic errors in your model.</span><span style='COLOR:black'><o:p></o:p> - </span></p> - <h3><span style='COLOR:black'>ImplementationArtifacts<o:p></o:p></span></h3> - <p><span style='COLOR:black'>This folder contains implementation artifacts -associated with components. <em>idl_to_picml</em> has created these artifacts -for us, with their dependency relationships correctly captured. Figure 4 shows -the Implementation Artifacts for <em>Broker</em>.<o:p></o:p></span></p> - <p class="MsoNormal" align="center" style='MARGIN-BOTTOM:12pt;TEXT-ALIGN:center'><span style='COLOR:black'><img border="0" width="883" height="528" id="_x0000_i1031" src="images/fig4.jpg"><br> -Figure 4.<o:p></o:p></span></p> - <div class="MsoNormal" align="center" style='TEXT-ALIGN:center'><a name="1"></a><span style='COLOR:black'> - <hr size="2" width="100%" align="center"> - </span></div> - <h3><span style='COLOR:black'>ComponentImplementation<a name="2"></a><o:p></o:p></span></h3> - <p><span style='COLOR:black'>This folder contains models that describe the implementations -of component interfaces. In the Quoter example, we will have two monolithic -component implementations - named <em>StockDistributorImplementation</em> and <em>StockBrokerImplementation</em> -- and an assembly component implementation named <em>StockQuoter</em>, which is -an assembly of <em>StockDistributorImplementation</em> and <em>StockBrokerImplementaion</em>. -<em>idl_to_picml</em> has created the monolithic component implementations for -us, as shown in figure 5 for example, but we have to specify the connections -between them in order to construct a Quoter system.<o:p></o:p></span></p> - <p class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'><img border="0" width="894" height="617" id="_x0000_i1033" src="images/fig5.jpg"><br> -Figure 5<o:p></o:p></span></p> - <p><span style='COLOR:black'>Assembly components provide a boundary for the composition -of monolithic components and even other assemblies. Assembly components do not -provide actual implementations for their interface, it is a virtual component -that delegates its ports and attributes to one or more of the entities it -contains. There are slight differences between modeling an assembly and -modeling a monolithic component. Since the assembly is a virtual component, it -is not necessary to model a </span><code><span style='FONT-SIZE:10pt; -COLOR:black'>MonolithicImplementation</span></code><span style='COLOR:black'>. -Instead, <em>instances</em> of other components are placed within the assembly -and connected. Let's try to assemble the <em>StockQuoter</em>.<o:p></o:p></span></p> - <ol start="1" type="1"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l0 level1 lfo4'> - Right click the <em>ComponentImplementations</em> folder, choose <strong>Insert - Model->ComponentImplementationContainer</strong>, rename it as - "StockQuoterImplementation" in the Attribute Panel. Double click to open it.<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l0 level1 lfo4'> - From the Part Browser, drag a <<ComponentAssembly>> to the modeling - window, name it "StockQuoter". Double click to open it.<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l0 level1 lfo4'> - Now we will create two instances for interfaces <em>StockBroker</em> and <em>StockDistributor</em>. - To do that, expand the folder <em> - <span style="FONT-SIZE:10pt; - FONT-FAMILY:'Courier New'">InterfaceDefinitions</span></em>, then expand the <em> - <span style="FONT-SIZE:10pt;FONT-FAMILY:'Courier New'">InterfaceDefinitions/</span></em> - <em>Broker</em>, then <em> - <span style="FONT-SIZE:10pt;FONT-FAMILY:'Courier New'">InterfaceDefinitions/</span></em> - <em>Broker/ Stock</em> until the interface definition of <em>StockBroker</em> shows. - While expanding the tree, always keep the "StockQuoter" - <<ComponentAssembly>> window open. Then drag <code> - <span style='FONT-SIZE:10pt'>MyQuoter/InterfaceDefinitions/Broker/Stock/StockBroker</span></code> - in the browser to the "StockQuoter" <<ComponentAssembly>> window - while pressing ALT key. Repeat the same steps for <code> - <span style='FONT-SIZE:10pt'>MyQuoter/InterfaceDefinitions/Distributor/Stock/StockDistributor</span></code>, - and you will see two instances of component interfaces have been created as - shown in Figure 6 (the black line in the figure only indicates .mapping)<o:p></o:p></li> - </ol> - <p class="MsoNormal"><span style='COLOR:black'><o:p> </o:p> - </span></p> - <p class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'><img border="0" width="1076" height="696" id="_x0000_i1034" src="images/fig6.jpg"><br> -<br> -Figure 6<o:p></o:p></span></p> - <ol start="4" type="1"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l8 level1 lfo5'> - Create an <<PublishConnector>>.<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l8 level1 lfo5'> - Now assemble the components together according to <a href="images/fig1.jpg">Figure - 1</a>(make sure you change to connect mode <img border="0" width="32" height="32" id="_x0000_i1035" src="Icons/AddConnMode.gif">) - and the resulting assembly model should look like Figure 7. Note that to create - connections between StockDistributor.notify_out and StockBroker.notify_in, you - will need the intermediate connector <<PublishConnector>>.<o:p></o:p></li> - </ol> - <p class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'><img border="0" width="1076" height="445" id="_x0000_i1036" src="images/fig7.jpg"><!-- hhmts end -->><br> -<br> -Figure 7<o:p></o:p></span></p> - <div class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'> - <hr size="2" width="100%" align="center"> - </span></div> - <h3><a name="3"></a><span style='COLOR:black'>ComponentPackage<o:p></o:p></span></h3> - <p class="MsoNormal"><span style='COLOR:black'>This folder contains deployable -component packages. Every instance in an assembly should have a corresponding -monolithic implementation and packaged in a ComponentPackagebe To create a -package for <em>StockBroker</em>.instance<o:p></o:p></span></p> - <ol start="1" type="1"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l1 level1 lfo6'> - Right click folder <em>ComponentPackage</em>s , insert a - <<PackageContainer>>, name it "Broker"; Double click to open it.<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l1 level1 lfo6'> - From the PartBrowser, add the following:<o:p></o:p> - <ul type="circle"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list 1.0in;mso-list:l1 level2 lfo6'> - a <<ComponentPackage>> named "Broker";<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list 1.0in;mso-list:l1 level2 lfo6'> - a <<ComponentImplementationReference>> named "Broker";<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list 1.0in;mso-list:l1 level2 lfo6'> - a <<ComponentRef>> named "Broker";<o:p></o:p></li> - </ul> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l1 level1 lfo6'> - Refer the <<ComponentImplementationReference>> <em>Broker</em> to <code> - <span style='FONT-SIZE:10pt'>MyQuoter/ComponentImplementations/StockBroker</span></code>Implementation/StockBrokerMonolithicImpl. - Refer the <<ComponentRef>> <em>Broker</em> to <code> - <span style='FONT-SIZE:10pt'>MyQuoter/InterfaceDefinitions/Broker/Stock/StockBroker</span></code>. - To create a reference in GME, simply drag the tree node in the Browser "into" - the reference model. For example, you should drag the tree node <code> - <span style='FONT-SIZE:10pt'>MyQuoter/ComponentImplementations/StockBroker</span></code>Implementation/StockBrokerMonolithicImpl - into <<ComponentImplementationReference>> <em>Broker.</em> Check - GME manual(tutorials) for more information.<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l1 level1 lfo6'> - Switch to Connect Mode and create two connections according to the following - relationship.<o:p></o:p> - <ul type="circle"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list 1.0in;mso-list:l1 level2 lfo6'> - <<ComponentImplementationReference>> <em>Broker</em> implements - <<ComponentPackage>> <em>Broker</em>;<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list 1.0in;mso-list:l1 level2 lfo6'> - <<ComponentPackage>> <em>Broker</em> realizes - <<ComponentRef>> <em>Broker</em>.<o:p></o:p></li> - </ul> - </li> - </ol> - <p class="MsoNormal" style='MARGIN-BOTTOM:12pt;MARGIN-LEFT:0.5in;mso-margin-top-alt:auto'><span style='COLOR:black'><br> -<br> - The model you built should resemble Figure 8.<o:p></o:p></span></p> - <p class="MsoNormal" align="center" style='MARGIN-BOTTOM:12pt;MARGIN-LEFT:0.5in;TEXT-ALIGN:center;mso-margin-top-alt:auto'><span style='COLOR:black'><img border="0" width="1076" height="445" id="_x0000_i1038" src="images/fig8.jpg"><!-- hhmts start -->><br> -<br> -Figure 8<o:p></o:p></span></p> - <p class="MsoNormal" style='MARGIN-LEFT:0.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='COLOR:black'>Now create a -ComponentPackage/StockDistributor following the same steps. <o:p></o:p></span></p> - <ol start="5" type="1"> - <li class="MsoNormal" style='LIST-STYLE-POSITION:outside;COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l1 level1 lfo6'> - <br> - We will also need to create a package for the assembly component StockQuoter. - Remember assembly component is a virtual component, it does not "realize" a - certain interface, so different from the Broker and Distributor packages, the - StockQuoter does not need a <<ComponentRef>>. To create this model: - <o:p></o:p></li> - </ol> - <p class="MsoNormal" style='MARGIN-LEFT:0.5in;TEXT-INDENT:-0.25in;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l1 level2 lfo7'><![if - !supportLists]><span style="FONT-SIZE:10pt;COLOR:black;FONT-FAMILY:'Courier New';mso-fareast-font-family:'Courier New';mso-bidi-font-size:12.0pt"><span style='mso-list:Ignore'>1.<span style="FONT:7pt 'Times New Roman'"> </span></span> - </span><![endif]><span style='COLOR:black'>Insert a <<ComponentPackage>> named -"StockQuoter"<o:p></o:p></span></p> - <p class="MsoNormal" style='MARGIN-LEFT:1in;TEXT-INDENT:-0.25in;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l1 level2 lfo7'><![if - !supportLists]><span style="FONT-SIZE:10pt;COLOR:black;FONT-FAMILY:'Courier New';mso-fareast-font-family:'Courier New';mso-bidi-font-size:12.0pt"><span style='mso-list:Ignore'>2.<span style="FONT:7pt 'Times New Roman'"> </span></span> - </span><![endif]><span style='COLOR:black'>Add a <<ComponentImplementationReference>> -named "StockQuoter", refer it to MyQuoter</span><code><span style='FONT-SIZE:10pt;COLOR:black'>/ComponentImplementations/StockQuoter/StockQuoter</span></code><span style='COLOR:black'><o:p></o:p> - </span></p> - <p class="MsoNormal" style='MARGIN-LEFT:1in;TEXT-INDENT:-0.25in;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l1 level2 lfo7'><![if - !supportLists]><span style="FONT-SIZE:10pt;COLOR:black;FONT-FAMILY:'Courier New';mso-fareast-font-family:'Courier New';mso-bidi-font-size:12.0pt"><span style='mso-list:Ignore'>3.<span style="FONT:7pt 'Times New Roman'"> </span></span> - </span><![endif]><span style='COLOR:black'>Switch to connect mode and connect -<<ComponentImplementationReference>> StockQuoter with -<<ComponentPackage>> StockQuoter, as in Figure 9.<o:p></o:p></span></p> - <p class="MsoNormal" align="center" style='MARGIN-BOTTOM:12pt;TEXT-ALIGN:center'><span style='COLOR:black'><img border="0" width="1076" height="445" id="_x0000_i1039" src="images/fig9.jpg"><!-- Created: Sat Nov 27 15:25:06 CST 1999 --><!-- hhmts start -->><br> -<br> -Figure 9<o:p></o:p></span></p> - <div class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'> - <hr size="2" width="100%" align="center"> - </span></div> - <h3><a name="4"></a><span style='COLOR:black'>PackageConfiguration<o:p></o:p></span></h3> - <p class="MsoNormal"><span style='COLOR:black'>This folder contains just one -model capturing specific configuration of Component packages.<o:p></o:p></span></p> - <ol start="1" type="1"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l6 level1 lfo8'> - In the folder <em>PackageConfiguratio</em>n, and create a - <<PackageConfigurationContainer>>, name it "Default", click to open - it.<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l6 level1 lfo8'> - Add a <<PackageConfiguration>> named "default" and a - <<ComponentPackageReference>>, name it "StockQuoter", connect - "Default" to "StockQuoter"<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l6 level1 lfo8'> - Refer <<ComponentPackageReference>> StockQuoter to - <<ComponentPackage>> <code> - <span style='FONT-SIZE:10pt'>MyQuoter/ComponentPackage/StockQuoter/StockQuoter</span></code><span style="FONT-SIZE:10pt;FONT-FAMILY:'Courier New'"><br> - <code>(Not <<ComponentImplementationReference>></code></span> - <code> - <span style='FONT-SIZE:10pt'>MyQuoter/ComponentPackage/StockQuoter/StockQuoter!) </span></code><o:p></o:p></li> - </ol> - <p class="MsoNormal"><span style='COLOR:black'><o:p> </o:p> - </span></p> - <div class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'> - <hr size="2" width="100%" align="center"> - </span></div> - <h3><a name="5"></a><span style='COLOR:black'>ToplevelPackage<o:p></o:p></span></h3> - <p class="MsoNormal"><span style='COLOR:black'>This folder contains one model -capturing information about the top-level element that will be fed to the -application.<o:p></o:p></span></p> - <ol start="1" type="1"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l4 level1 lfo9'> - In the folder <em>ToplevelPackage</em>, and create a - <<ToplevelPackageContainer>>, name it "Default", double click to - open it.<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l4 level1 lfo9'> - Add a <<ToplevelPackage>> named "ToplevelPackage" and a - <<PackageConfigurationReference>>, name it "Default", connect - "ToplevelPackage" to "Default"<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l4 level1 lfo9'> - Refer "Default" to My<code><span style='FONT-SIZE:10pt'>Quoter/PackageConfiguration/Default/Default</span></code><o:p></o:p></li> - </ol> - <p class="MsoNormal"><span style='COLOR:black'><o:p> </o:p> - </span></p> - <div class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'> - <hr size="2" width="100%" align="center"> - </span></div> - <h3><a name="6"></a><span style='COLOR:black'>Targets<o:p></o:p></span></h3> - <p class="MsoNormal"><span style='COLOR:black'>This folder contains -domain-specific models capturing information about the target environment in -which component-based application will be deployed. In this Quoter example, we -can either deploy the two components into ONE host, or into TWO different host. -We will deploy the Quoter into two different host.<o:p></o:p></span></p> - <ol start="1" type="1"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l5 level1 lfo10'> - In the folder <i>Targets</i>, insert a new <<Domain>> named - "Domain"; double click to open it.<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l5 level1 lfo10'> - From the Part Browser, add two <<Node>> named "Broker" and - "Distributor" respectively.<o:p></o:p></li> - </ol> - <p class="MsoNormal"><span style='COLOR:black'><br> -Now we are ready to deploy our Components to the actual physical environment.<o:p></o:p></span></p> - <div class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'> - <hr size="2" width="100%" align="center"> - </span></div> - <h3><a name="7"></a><span style='COLOR:black'>DeploymentPlan<o:p></o:p></span></h3> - <p class="MsoNormal"><span style='COLOR:black'>This folder contains a plan model -that captures information about the assignment of component to nodes.<o:p></o:p></span></p> - <ol start="1" type="1"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l7 level1 lfo11'> - In the folder <em>DeploymentPlan</em>, insert a model - <<DeploymentPlan>>; name it "Plan", click to open it<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list .5in;mso-list:l7 level1 lfo11'> - From the PartBrowser, add the following:<o:p></o:p> - <ul type="circle"> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list 1.0in;mso-list:l7 level2 lfo11'> - Two <<CollocationGroup>><o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list 1.0in;mso-list:l7 level2 lfo11'> - Two <<NodeReference>> named "Node_Broker" and "Node_Distributor" - respectively, refering to <code> - <span style='FONT-SIZE:10pt'>MyQuoter/Targets/Domain/Broker</span></code> and - <code> - <span style='FONT-SIZE:10pt'>MyQuoter/Targets/Domain/Distributor</span></code> - respectively<o:p></o:p> - <li class="MsoNormal" style='COLOR:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;tab-stops:list 1.0in;mso-list:l7 level2 lfo11'> - Two <<ComponentRef>> named "StockBroker" and "StockDistributor" - respectively, refering to <code> - <span style='FONT-SIZE:10pt'>MyQuoter/ComponentImplementations/StockQuoterImplementation/StockQuoter/StockBroker</span></code> - and <code> - <span style='FONT-SIZE:10pt'>MyQuoter/ComponentImplementations/StockQuoterImplementation/StockQuoter/StockDistributor</span></code> - respectively. Note that the <<ComponentRef>> in DeploymentPlan is - not referring to the interface, but rather the actual instance of the - implementation.<o:p></o:p></li> - </ul> - <li class="MsoNormal" style='MARGIN-BOTTOM:12pt;COLOR:black;mso-margin-top-alt:auto;tab-stops:list .5in;mso-list:l7 level1 lfo11'> - Switch to Connect Mode, connect one <<CollocationGroup>> to - <<NodeReference>> <em>Node_Broker</em>, connect another - <<CollocationGroup>> to <<NodeReference>> <em>Node_Distributor</em>. - Now the model looks like the following.<o:p></o:p></li> - </ol> - <p class="MsoNormal" align="center" style='MARGIN-BOTTOM:12pt;MARGIN-LEFT:0.5in;TEXT-ALIGN:center;mso-margin-top-alt:auto'><span style='COLOR:black'><img border="0" width="1076" height="530" id="_x0000_i1044" src="images/fig10.jpg"><br> -<br> -Figure 10.<o:p></o:p></span></p> - <ol start="4" type="1"> - <li class="MsoNormal" style='MARGIN-BOTTOM:12pt;COLOR:black;mso-margin-top-alt:auto;tab-stops:list .5in;mso-list:l7 level1 lfo11'> - Now we need to associate <<ComponentRef>> StockBroker to the - <<CollocationGroup>> running on the <<NodeReference>> - Broker, and <<ComponentRef>> StockDistributor to the - <<CollocationGroup>> running on the <<NodeReference>> - Distributor. To do that, switch the Edit Mode Bar to Set Mode (<img border="0" width="32" height="32" id="_x0000_i1045" src="Icons/SetMode.gif">), - and move the cursor to the <<CollocationGroup>> running on - <<NodeReference>> Distributor, right-click on it. You will find the - cursor is changed to set mode cursor, and only the - <<CollocationGroup>> you clicked in is highlighted, as shown in - Figure 11.<o:p></o:p></li> - </ol> - <p class="MsoNormal" align="center" style='MARGIN-BOTTOM:12pt;TEXT-ALIGN:center'><span style='COLOR:black'><img border="0" width="1076" height="530" id="_x0000_i1046" src="images/fig11.jpg"><!-- 01.html,v 1.3 2006/02/10 14:34:35 mxiong Exp -->><br> -<br> -Figure 11<o:p></o:p></span></p> - <p><span style='COLOR:black'>Now move your cursor to -<<ComponentRef>> StockDistributor, and left-click it, so that -it looks like Figure 12.<o:p></o:p></span></p> - <p class="MsoNormal" align="center" style='MARGIN-BOTTOM:12pt;TEXT-ALIGN:center'><span style='COLOR:black'><img border="0" width="1076" height="530" id="_x0000_i1047" src="images/fig12.jpg"> - - <br> -<br> -Figure 12<o:p></o:p></span></p> - <p style='MARGIN-BOTTOM:12pt'><span style='COLOR:black'>This operation -associates <em>StockDistributor</em> component to the -<<CollocationGroup>> running on <em>Distributor</em> node. To do -the same with Broker, just right-click on another -<<CollocationGroup>>, and left-click on StockBroker -<<CollocationGroup>> which is highlighted.<o:p></o:p></span></p> - <div class="MsoNormal" align="center" style='TEXT-ALIGN:center'><span style='COLOR:black'> - <hr size="2" width="100%" align="center"> - </span></div> - <p><a name="8"></a><span style='COLOR:black'>Up to this point, we are basically -done with the modeling part. Before we generate anything from this model -though, please <b>DO</b> remember to check the constraints of the model as we -mentioned earlier.<o:p></o:p></span></p> - <p><span style='COLOR:black'>After we are done with the modeling, the -Deploymentplan interpreter that comes along with PICML will help us -to generate a Plan.cdp file. Please make sure you generate -this file to MyQuoter/descriptors. Note that to get the example working</span><span style="COLOR:black; FONT-FAMILY:'Courier New'">,</span><span style='COLOR:black'>a -Node -Map file should be created to map logical nodes to NodeManager object -references,e.g:<o:p></o:p></span></p> - <pre wrap=""><span style='COLOR:black'>DistributorNode corbaloc:iiop:localhost:30000/NodeManager<o:p></o:p></span></pre> - <pre><span -style='COLOR:black'>BrokerNode<span style='mso-spacerun:yes'> </span>corbaloc:iiop:localhost:40000/NodeManager<o:p></o:p></span></pre> - <pre><span -style='COLOR:black'><o:p> </o:p></span></pre> - <pre><span style='COLOR:black'><o:p> </o:p></span></pre> - <p class="MsoNormal" align="center" style='TEXT-ALIGN:center;tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span style='COLOR:black'><a href="02.html">Previous</a><span style='mso-tab-count: -8'> </span> - <a href="04.html">Next</a><o:p></o:p> - </span></p> - <div class="MsoNormal" align="center" style='TEXT-ALIGN:center;tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span style='COLOR:black'> - <hr size="2" width="100%" align="center"> - </span></div> - <address style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span style='COLOR:black'><a href="mailto:ming.xiong@vanderbilt.edu">Ming - Xiong<br> - </a> - </span><a href="mailto:abdullah.sowayan@lmco.com">Abdullah Sowayan</a></address> - <p class="MsoNormal" style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span style='COLOR:black'><o:p> </o:p> - </span></p> - <P class="MsoNormal" style="tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt"><SPAN style="COLOR: black"> - <o:p>$Id$</o:p> - </SPAN><o:p> </o:p></P> - </div> - </body> -</html> |