1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
<HTML><HEAD>
<TITLE>Tcl Libraries -- When to Use Tcl Libraries</TITLE>
<LINK rel=Previous href="tlib-ch1.htm">
<LINK rel=ToC href="toc.htm">
<LINK rel=Index href="master.htm">
<LINK rel=Next href="tlib-ch3.htm">
</HEAD><BODY BGCOLOR="#ffffff"><A NAME="topofpage"></A>
<TABLE WIDTH=100%>
<TR>
<TD ALIGN=LEFT>
<A NAME="topofpage"></A> <IMG SRC="as-c-sm.gif">
</TD>
<TD ALIGN=RIGHT>
<A href="tlib-ch1.htm"><IMG BORDER="0" src=navbprev.gif alt="[ Previous ]"></A>
<A href=toc.htm> <IMG BORDER="0" src=navbhome.gif alt="[ Contents ]"></A>
<A href=master.htm> <IMG BORDER="0" src=navbhelp.gif alt="[ Index ]"></A>
<A href="tlib-ch3.htm"> <IMG BORDER="0" src=navbnext.gif alt="[ Next ]"></A>
<A name="7983"> </A>
</TD>
</TR>
</TABLE>
<a name="15705">
</a><h3>When to Use Tcl Libraries</h3>
<p><a name="14320">
</a>The alternative to embedding Tcl scripts in HTML pages using ADPs (see <a href="tadp-ch.htm#2039">Chapter 2</a>), is to store Tcl scripts in Tcl libraries. The situations listed below are well-suited to the Tcl libraries approach.</p>
<ul><li><b>Inheritance:</b> If you want one Tcl script to handle an URL and all of its sub-URLs, it's better to store the script in a Tcl library and register it using <b>ns_register_proc</b> to handle an URL hierarchy. For example, you may want to manage a server domain name change by redirecting every response to the corresponding domain name on another server.<a name="14324">
</a>
<p><li><b>Special Extensions:</b> If you want one Tcl script to handle all files with a specific extension, like /*.csv, you would register the script with <b>ns_register_proc</b> to handle those files.<a name="14325">
</a>
<p><li><b>Scheduled Procedures:</b> If you want a Tcl script to be run at specific intervals, you can use the <b>ns_schedule_*</b> functions to run a script from the Tcl library at scheduled intervals. These procedures do not normally involve returning HTML pages and so are not well suited to ADPs.<a name="14326">
</a>
<p><li><b>Filters:</b> If you want a Tcl script to be called at pre-authorization, post-authorization, or trace time for a group of URLs, you would register a filter using the <b>ns_register_filter</b> function.<a name="14327">
</a>
<p><li><b>Re-using Tcl Scripts:</b> If there are Tcl scripts that you want to use in multiple situations, you can store them in a Tcl library and invoke them from within any ADP or Tcl script.<a name="14328">
</a>
<p></ul>
<TABLE BORDER="2" CELLPADDING="1" width="100%">
<TR><TD COLSPAN=3><P ALIGN=Center>
<IMG SRC="bluebult.gif">
<A HREF="#topofpage">
<FONT SIZE=-1>Top of Page</FONT></A>
<IMG SRC="bluebult.gif">
</TD></TR>
<TR><TD COLSPAN=3><P ALIGN=Center>
<A href="tlib-ch1.htm">
<IMG BORDER="0" src=navbprev.gif alt="[ Previous ]"></A>
<A href=toc.htm>
<IMG BORDER="0" src=navbhome.gif alt="[ Contents ]"></A>
<A href=master.htm>
<IMG BORDER="0" src=navbhelp.gif alt="[ Index ]"></A>
<A href="tlib-ch3.htm">
<IMG BORDER="0" src=navbnext.gif alt="[ Next ]"></A>
<BR align=center>
<FONT size=-1>Copyright © 1998-99 America Online,
Inc.</FONT>
</TD></TR></TABLE></BODY></HTML>
|