/[eiffelstudio]/trunk/Delivery/xmldoc/tools/wizards/com/guided_tour/03_accessing.xml
ViewVC logotype

Diff of /trunk/Delivery/xmldoc/tools/wizards/com/guided_tour/03_accessing.xml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 51736 by raphaels, Fri Apr 29 14:59:19 2005 UTC revision 51737 by raphaels, Mon Jun 6 15:52:57 2005 UTC
# Line 72  Line 72 
72                  <note>                  <note>
73                          <bold>Note</bold>:                          <bold>Note</bold>:
74                          When accessing a COM component the EiffelCOM Wizard will generate a precompiled library which includes all the generated classes.                          When accessing a COM component the EiffelCOM Wizard will generate a precompiled library which includes all the generated classes.
75                          This allows for easy browsing of the generated classes, however a precompilation project is read-only, so you need to start                          This allows for easy browsing of the generated classes, however a precompilation project is read-only, so you need to start
76                          another EiffelStudio to reuse the generated classes. The interesting classes are all related to the coclass proxy                          another EiffelStudio to reuse the generated classes. The interesting classes are all related to the coclass proxy
77                  <class_name>STRING_MANIPULATOR_PROXY</class_name>. The proxy is the Eiffel class that gives access to the component. Each feature on                  <class_name>STRING_MANIPULATOR_PROXY</class_name>. The proxy is the Eiffel class that gives access to the component. Each feature on
78                  the proxy calls the corresponding interface function on the component. You can use the EiffelStudio opened by the wizard to browse                  the proxy calls the corresponding interface function on the component. You can use the EiffelStudio opened by the wizard to browse
# Line 82  Line 82 
82                  </heading>                  </heading>
83                  To implement a client of the <class_name>StringManipulator</class_name> component open a new EiffelStudio. Create the project in                  To implement a client of the <class_name>StringManipulator</class_name> component open a new EiffelStudio. Create the project in
84                  <italic>$ISE_EIFFEL\examples\com\wizard\string_manipulator\client</italic> using the ace file found in that directory.                  <italic>$ISE_EIFFEL\examples\com\wizard\string_manipulator\client</italic> using the ace file found in that directory.
85                  Freeze and run the project. You are now accessing the previously built component and calling functions on its interfaces!. The class                  Freeze and run the project. You are now accessing the previously built component and calling functions on its interfaces! The class
86                  <class_name>MY_STRING_MANIPULATOR</class_name> inherits from the generated                  <class_name>MY_STRING_MANIPULATOR</class_name> inherits from the generated
87                  <class_name>STRING_MANIPULATOR_PROXY</class_name> and redefines the feature                  <class_name>STRING_MANIPULATOR_PROXY</class_name> and redefines the feature
88                  <italic>replace_substring_user_precondition</italic>.The generated interfaces include contracts for each exposed function.                  <italic>replace_substring_user_precondition</italic>. The generated interfaces include contracts for each exposed function.
89                  You can redefine the                  You can redefine the
90                  <italic>user_precondition</italic> features to implement your own preconditions.                  <italic>user_precondition</italic> features to implement your own preconditions.
91                  <heading>                  <heading>
92                          <size>2</size> Contracts                          <size>2</size> Contracts
93                  </heading>                  </heading>
94                  Contracts can be broken directly on the proxy in which case you will get a standard contract violation or in the server.                  Contracts can be broken directly on the proxy in which case you will get a standard contract violation in the client.
95                  If contracts are broken on the server then the exception will be forwarded by the EiffelCOM runtime to the client. The feature                  If contracts are broken on the server then the exception will be forwarded by the EiffelCOM runtime to the client. The feature
96                  replace_substring_user_precondition in                  replace_substring_user_precondition in
97                  <class_name>MY_STRING_MANIPULATOR</class_name> includes the following commented line:                  <class_name>MY_STRING_MANIPULATOR</class_name> includes the following commented line:
# Line 109  Line 109 
109                          </link>                          </link>
110                  </code> feature is wrong and erroneous calls can be made. Quick melt the changes and run the client. Enter some invalid numbers in                  </code> feature is wrong and erroneous calls can be made. Quick melt the changes and run the client. Enter some invalid numbers in
111                  the fields used to call this feature. After you click <bold>Replace</bold> you will see an error message box warning you that                  the fields used to call this feature. After you click <bold>Replace</bold> you will see an error message box warning you that
112                  a precondition was violated on the server side. This demonstrates contracts `over the wire'. The preconditions was violated                  a precondition was violated on the server side. This demonstrates contracts `over the wire'. The precondition was violated
113                  in the server, this exception was caught by the EiffelCOM runtime and sent back to the client.                  in the server; this exception was caught by the EiffelCOM runtime and sent back to the client.
114                  <seealso>                  <seealso>
115                          <bold>See Also</bold>                          <bold>See Also</bold>
116                          <line_break/>                          <line_break/>

Legend:
Removed from v.51736  
changed lines
  Added in v.51737

  ViewVC Help
Powered by ViewVC 1.1.23