<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/frameset.dtd"> <HTML> <HEAD> <TITLE>XOTcl - Documentation -- ./library/lib/mixinStrategy.xotcl</TITLE> </HEAD> <BODY BGCOLOR="FFFFFF"> <h1> <IMG SRC="./logo-100.jpg" ALT="./library/lib/mixinStrategy.xotcl" ALIGN="MIDDLE"> ./library/lib/mixinStrategy.xotcl</h1> <HR> <P> <h2> Package/File Information </h2> <b> Package provided: </b> xotcl::mixinStrategy 0.8 <BR> <BR> <b>Defined Objects/Classes: </b> <UL> <LI> <A HREF="#Object"> <em>Object</em>: </A> <a href="#Object-add">add</a>, <a href="#Object-mixinQueryStrategy">mixinQueryStrategy</a>, <a href="#Object-mixinStrategy">mixinStrategy</a>, <a href="#Object-remove">remove</a>. <BR> </LI> </UL> <BR> <b> Filename: </b> <A HREF="./library/lib/mixinStrategy.xotcl"> ./library/lib/mixinStrategy.xotcl </A> <BR> <BR> <TABLE BORDER="0"> <TR VALIGN="top"> <TD VALIGN="top"> <em> Description:</em> </TD> <TD VALIGN="top"> These methods provide support for managing "strategies", i.e. mixin-classes, where only one kind of a family of conformant mixins should be registered. <p> Naming convertions for strategies: All strategies must follow the naming convention 'kind=implementation'. Examples are the persistency strategy 'eager' specfied as 'persistent=eager' or the persistency strategy 'lazy' (specified as 'persistent=lazy') </TD> </TR> </TABLE> <BR> <HR> <P> <A NAME="Object"> </A> <h2> Class: <em> Object </em> </h2> <b> Procs/Instprocs: </b> <a href="#Object-add">add</a>, <a href="#Object-mixinQueryStrategy">mixinQueryStrategy</a>, <a href="#Object-mixinStrategy">mixinStrategy</a>, <a href="#Object-remove">remove</a>. <TABLE BORDER="0"> </TABLE> <h3>Instprocs</h3> <UL> <LI> <A NAME="Object-mixinStrategy"> </A> <b>mixinStrategy </b> <em>strategy</em> <TABLE BORDER="0"> <TR VALIGN="top"> <TD VALIGN="top"> <em>Arguments:</em> </TD> <TD VALIGN="top"> <b>strategy</b>: Strategy to be added </TD> </TR> <TR VALIGN="top"> <TD VALIGN="top"> <em> Description:</em> </TD> <TD VALIGN="top"> This method adds or replaces a new strategy from the mixin list. Strategies are named following the converntion mentioned above. </TD> </TR> <TR VALIGN="top"> <TD VALIGN="top"> <em> Return:</em> </TD> <TD VALIGN="top"> old strategy </TD> </TR> </TABLE> </LI> <LI> <A NAME="Object-mixinQueryStrategy"> </A> <b>mixinQueryStrategy </b> <em>kind</em> <TABLE BORDER="0"> <TR VALIGN="top"> <TD VALIGN="top"> <em>Arguments:</em> </TD> <TD VALIGN="top"> <b>kind</b>: strategy kind </TD> </TR> <TR VALIGN="top"> <TD VALIGN="top"> <em> Description:</em> </TD> <TD VALIGN="top"> This method searches the mixin list for a mixin of this kind (starting with $kind=) </TD> </TR> <TR VALIGN="top"> <TD VALIGN="top"> <em> Return:</em> </TD> <TD VALIGN="top"> returns the maching strategy </TD> </TR> </TABLE> </LI> <LI> <A NAME="Object-add"> </A> <b>add </b> <em>construct</em> <em>args</em> <TABLE BORDER="0"> <TR VALIGN="top"> <TD VALIGN="top"> <em>Arguments:</em> </TD> <TD VALIGN="top"> <b>construct</b>: (inst) 'filter' or 'mixin' </TD> </TR> <TR VALIGN="top"> <TD VALIGN="top"> </TD> <TD VALIGN="top"> <b>args</b>: to be added </TD> </TR> <TR VALIGN="top"> <TD VALIGN="top"> <em> Description:</em> </TD> <TD VALIGN="top"> add the specified (inst) 'filters' or 'mixins' </TD> </TR> <TR VALIGN="top"> <TD VALIGN="top"> <em> Return:</em> </TD> <TD VALIGN="top"> empty </TD> </TR> </TABLE> </LI> <LI> <A NAME="Object-remove"> </A> <b>remove </b> <em>construct</em> <em>args</em> <TABLE BORDER="0"> <TR VALIGN="top"> <TD VALIGN="top"> <em>Arguments:</em> </TD> <TD VALIGN="top"> <b>construct</b>: (inst) 'filter' or 'mixin' </TD> </TR> <TR VALIGN="top"> <TD VALIGN="top"> </TD> <TD VALIGN="top"> <b>args</b>: to be removed </TD> </TR> <TR VALIGN="top"> <TD VALIGN="top"> <em> Description:</em> </TD> <TD VALIGN="top"> remove the specified (inst) 'filters' or 'mixins' </TD> </TR> <TR VALIGN="top"> <TD VALIGN="top"> <em> Return:</em> </TD> <TD VALIGN="top"> empty </TD> </TR> </TABLE> </LI> </UL> </P> <BR> </P> <HR> <P> </P> <A HREF="./index.html"> Back to index page. </A> <BR> <HR> <P> </P> </BODY> </HTML>