blob: 2ab5f15938181ac14f6da30900da500c20a5b80a [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_14) on Mon Apr 26 10:16:13 PDT 2010 -->
<TITLE>
LinkTool (VelocityTools 2.0 Documentation)
</TITLE>
<META NAME="keywords" CONTENT="org.apache.velocity.tools.generic.LinkTool class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="LinkTool (VelocityTools 2.0 Documentation)";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/IteratorTool.html" title="class in org.apache.velocity.tools.generic"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/ListTool.html" title="class in org.apache.velocity.tools.generic"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/velocity/tools/generic/LinkTool.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="LinkTool.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.velocity.tools.generic</FONT>
<BR>
Class LinkTool</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html" title="class in org.apache.velocity.tools.generic">org.apache.velocity.tools.generic.SafeConfig</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.velocity.tools.generic.LinkTool</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD>java.lang.Cloneable</DD>
</DL>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../../org/apache/velocity/tools/view/LinkTool.html" title="class in org.apache.velocity.tools.view">LinkTool</A></DD>
</DL>
<HR>
<DL>
<DT><PRE><FONT SIZE="-1"><A HREF="../../../../../org/apache/velocity/tools/config/DefaultKey.html" title="annotation in org.apache.velocity.tools.config">@DefaultKey</A>(<A HREF="../../../../../org/apache/velocity/tools/config/DefaultKey.html#value()">value</A>="link")
<A HREF="../../../../../org/apache/velocity/tools/config/SkipSetters.html" title="annotation in org.apache.velocity.tools.config">@SkipSetters</A>
<A HREF="../../../../../org/apache/velocity/tools/config/ValidScope.html" title="annotation in org.apache.velocity.tools.config">@ValidScope</A>(<A HREF="../../../../../org/apache/velocity/tools/config/ValidScope.html#value()">value</A>="request")
</FONT>public class <B>LinkTool</B><DT>extends <A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html" title="class in org.apache.velocity.tools.generic">SafeConfig</A><DT>implements java.lang.Cloneable</DL>
</PRE>
<P>
<p>The LinkTool provides many methods to work with URIs and can help you:
<ul>
<li>construct full URIs (opaque, absolute or relative)</li>
<li>encode and decode URLs (part or whole)</li>
<li>retrieve path info for the current request</li>
<li>and more..</li>
</ul></p>
<p>This GenericTools (i.e. non-servlet based) version of LinkTool
is largely based upon the same API and behavior as the older
VelocityView version, with a few differences, particularly in
internal representation and query handling. You can expect that
in the future work will be done to more closely align the APIs.
It is likely that the VelocityView version will become a subclass
of this version that adds on servlet-awareness and related features.
For now, though, they are entirely separate but similar tools.
</p>
<p>The LinkTool is somewhat special in that nearly all public methods return
a new instance of LinkTool. This facilitates greatly the repeated use
of the LinkTool in Velocity and leads to an elegant syntax.</p>
<p><pre>
Template example(s):
#set( $base = $link.relative('MyPage.vm').anchor('view') )
&lt;a href="$base.param('select','this')"&gt;this&lt;/a&gt;
&lt;a href="$base.param('select','that')"&gt;that&lt;/a&gt;
Toolbox configuration:
&lt;tools&gt;
&lt;toolbox scope="request"&gt;
&lt;tool class="org.apache.velocity.tools.generic.LinkTool"
uri="http://velocity.apache.org/tools/devel/"/&gt;
&lt;/toolbox&gt;
&lt;/tools&gt;
</pre></p>
<P>
<P>
<DL>
<DT><B>Since:</B></DT>
<DD>VelocityTools 2.0</DD>
<DT><B>Version:</B></DT>
<DD>$Id: LinkTool.java 601976 2007-12-07 03:50:51Z nbubna $</DD>
<DT><B>Author:</B></DT>
<DD>Nathan Bubna</DD>
</DL>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#APPEND_PARAMS_KEY">APPEND_PARAMS_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#appendParams">appendParams</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#charset">charset</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#CHARSET_KEY">CHARSET_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#DEFAULT_CHARSET">DEFAULT_CHARSET</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#DEFAULT_SCHEME">DEFAULT_SCHEME</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#FORCE_RELATIVE_KEY">FORCE_RELATIVE_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#forceRelative">forceRelative</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#fragment">fragment</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#FRAGMENT_KEY">FRAGMENT_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#host">host</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#HOST_KEY">HOST_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#HTML_QUERY_DELIMITER">HTML_QUERY_DELIMITER</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Standard HTML delimiter for query data ('&')</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;org.apache.velocity.runtime.log.Log</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#LOG">LOG</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#opaque">opaque</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#path">path</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#PATH_KEY">PATH_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#port">port</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#PORT_KEY">PORT_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.util.Map</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#query">query</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#QUERY_KEY">QUERY_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#queryDelim">queryDelim</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#scheme">scheme</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#SCHEME_KEY">SCHEME_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#SECURE_SCHEME">SECURE_SCHEME</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#self">self</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#URI_KEY">URI_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#user">user</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#USER_KEY">USER_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#XHTML_MODE_KEY">XHTML_MODE_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#XHTML_QUERY_DELIMITER">XHTML_QUERY_DELIMITER</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;XHTML delimiter for query data ('&amp;amp;')</TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.velocity.tools.generic.SafeConfig"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.velocity.tools.generic.<A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html" title="class in org.apache.velocity.tools.generic">SafeConfig</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html#LOCK_CONFIG_KEY">LOCK_CONFIG_KEY</A>, <A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html#OLD_LOCK_CONFIG_KEY">OLD_LOCK_CONFIG_KEY</A>, <A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html#SAFE_MODE_KEY">SAFE_MODE_KEY</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#LinkTool()">LinkTool</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default constructor.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#absolute()">absolute</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a copy of this LinkTool instance that has
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setForceRelative(boolean)"><CODE>setForceRelative(boolean)</CODE></A> set to false and sets the
scheme to the "http" if no scheme has been set yet.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#absolute(java.lang.Object)">absolute</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a copy of the link with the specified URI reference
either used as or converted to an absolute (non-relative)
URI reference.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#addToList(java.util.List, java.lang.Object)">addToList</A></B>(java.util.List&nbsp;vals,
java.lang.Object&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#anchor(java.lang.Object)">anchor</A></B>(java.lang.Object&nbsp;anchor)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a copy of the link with the specified anchor to be
added to the end of the generated hyperlink.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#append(java.lang.Object)">append</A></B>(java.lang.Object&nbsp;pth)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Appends the given value to the end of the current
path value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#append(java.lang.Object, java.lang.Object)">append</A></B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Appends a new key=value pair to the existing query
data.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#appendAsArray(java.lang.StringBuilder, java.lang.Object, java.lang.Object[])">appendAsArray</A></B>(java.lang.StringBuilder&nbsp;out,
java.lang.Object&nbsp;key,
java.lang.Object[]&nbsp;arr)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#appendParam(java.lang.String, java.lang.Object)">appendParam</A></B>(java.lang.String&nbsp;key,
java.lang.Object&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#appendPath(java.lang.Object)">appendPath</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Uses <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#combinePath(java.lang.String, java.lang.String)"><CODE>combinePath(java.lang.String, java.lang.String)</CODE></A> to add the specified value
to the current <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getPath()"><CODE>getPath()</CODE></A> value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#appendQuery(java.lang.Object)">appendQuery</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Uses <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#combineQuery(java.lang.String, java.lang.String)"><CODE>combineQuery(java.lang.String, java.lang.String)</CODE></A> to append the specified value
to the current <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getQuery()"><CODE>getQuery()</CODE></A> value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#combinePath(java.lang.String, java.lang.String)">combinePath</A></B>(java.lang.String&nbsp;start,
java.lang.String&nbsp;end)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If end is null, this will return start and vice versa.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#combineQuery(java.lang.String, java.lang.String)">combineQuery</A></B>(java.lang.String&nbsp;current,
java.lang.String&nbsp;add)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the second param is null or empty, this will simply return the first
and vice versa.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#configure(org.apache.velocity.tools.generic.ValueParser)">configure</A></B>(<A HREF="../../../../../org/apache/velocity/tools/generic/ValueParser.html" title="class in org.apache.velocity.tools.generic">ValueParser</A>&nbsp;props)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Does the actual configuration.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.net.URI</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#createURI()">createURI</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tries to create a URI from the current port, opacity, scheme,
userInfo, host, path, query and fragment set for this instance,
using the <CODE>URI</CODE> constructor that is appropriate to the opacity.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#debug(java.lang.String, java.lang.Object...)">debug</A></B>(java.lang.String&nbsp;msg,
java.lang.Object...&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#debug(java.lang.String, java.lang.Throwable, java.lang.Object...)">debug</A></B>(java.lang.String&nbsp;msg,
java.lang.Throwable&nbsp;t,
java.lang.Object...&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#decode(java.lang.Object)">decode</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delegates decoding of the specified url content to
<CODE>URLDecoder.decode(java.lang.String)</CODE> using the configured character encoding.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#decodeQueryPercents(java.lang.String)">decodeQueryPercents</A></B>(java.lang.String&nbsp;url)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This is an ugly (but fast) hack that's needed because URI encodes
things that we don't need encoded while not encoding things
that we do need encoded.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#directory()">directory</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new LinkTool instance with
the path set to the result of <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getDirectory()"><CODE>getDirectory()</CODE></A>
and the query and fragment set to null.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#duplicate()">duplicate</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Equivalent to clone, but with no checked exceptions.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#duplicate(boolean)">duplicate</A></B>(boolean&nbsp;deep)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Equivalent to clone, but with no checked exceptions.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#encode(java.lang.Object)">encode</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delegates encoding of the specified url content to
<CODE>URLEncoder.encode(java.lang.String)</CODE> using the configured character encoding.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#equals(java.lang.Object)">equals</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This instance is considered equal to any
LinkTool instance whose toString() method returns a
String equal to that returned by this instance's toString()</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getAnchor()">getAnchor</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the anchor (internal document reference) set for this link.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getAppendParams()">getAppendParams</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#param(java.lang.Object, java.lang.Object)"><CODE>param(Object,Object)</CODE></A> appends values;
false if the method overwrites existing value(s) for the specified key.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getBaseRef()">getBaseRef</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the full URI of this template without any query data.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getCharacterEncoding()">getCharacterEncoding</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the configured charset used by the <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#encode(java.lang.Object)"><CODE>encode(java.lang.Object)</CODE></A> and
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#decode(java.lang.Object)"><CODE>decode(java.lang.Object)</CODE></A> methods.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getContextPath()">getContextPath</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;At this level, this only returns the result of <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getDirectory()"><CODE>getDirectory()</CODE></A>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getDirectory()">getDirectory</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the directory stack
in the set <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getPath()"><CODE>getPath()</CODE></A> value, by just trimming
off all that follows the last "/".</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getFile()">getFile</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the last section of the path,
which is all that follows the final "/".</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getHost()">getHost</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the host value for this instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.util.Map</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getParams()">getParams</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getPath()">getPath</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the current path value for this instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.Integer</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getPort()">getPort</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the port value, if any.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getQuery()">getQuery</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the current query as a string, if any.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getRoot()">getRoot</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the "root" for this URI, if it has one.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getScheme()">getScheme</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the scheme value for this instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getSelf()">getSelf</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.net.URI</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getUri()">getUri</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the tool is not in "safe mode"--which it is by default--
this will return the <CODE>URI</CODE> representation of this instance,
if any.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getUser()">getUser</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the <CODE>URI.getUserInfo()</CODE> value for this instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#handleParamsBoolean(boolean)">handleParamsBoolean</A></B>(boolean&nbsp;keep)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;In this class, this method ignores true values.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#hashCode()">hashCode</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the hash code for the result of toString().</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#host(java.lang.Object)">host</A></B>(java.lang.Object&nbsp;host)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new instance with the specified value set as its
host.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#insecure()">insecure</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new instance with the scheme set to "http".</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#isAbsolute()">isAbsolute</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if this instance has a scheme value
and is not being forced to create relative URIs.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#isOpaque()">isOpaque</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if this instance represents an opaque URI.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#isRelative()">isRelative</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if this instance is being forced to
return relative URIs or has a null scheme value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#isSecure()">isSecure</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if this instance's scheme is "https".</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#isXHTML()">isXHTML</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if the query delimiter used by this instance is
using <code>&amp;amp;</code> as the delimiter for query data pairs
or just using <code>&amp;</code>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#normalizeQuery(java.lang.String)">normalizeQuery</A></B>(java.lang.String&nbsp;qs)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#param(java.lang.Object, java.lang.Object)">param</A></B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds a key=value pair to the query data.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#params(java.lang.Object)">params</A></B>(java.lang.Object&nbsp;parameters)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This method can do two different things.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.util.Map&lt;java.lang.String,java.lang.Object&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#parseQuery(java.lang.String)">parseQuery</A></B>(java.lang.String&nbsp;query)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Uses <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#normalizeQuery(java.lang.String)"><CODE>normalizeQuery(java.lang.String)</CODE></A> to make all delimiters in the
specified query string match the current query delimiter
and then uses <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#parseQuery(java.lang.String, java.lang.String)"><CODE>parseQuery(String,String)</CODE></A> to parse it
according to that same delimiter.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.util.Map&lt;java.lang.String,java.lang.Object&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#parseQuery(java.lang.String, java.lang.String)">parseQuery</A></B>(java.lang.String&nbsp;query,
java.lang.String&nbsp;queryDelim)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This will use the specified query delimiter to parse the specified
query string into a map of keys to values.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#path(java.lang.Object)">path</A></B>(java.lang.Object&nbsp;pth)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new instance with the specified value
set as its path.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#port(java.lang.Object)">port</A></B>(java.lang.Object&nbsp;port)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new instance with the specified value set
as its port number.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#putParam(java.lang.Object, java.lang.Object)">putParam</A></B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#query(java.lang.Object)">query</A></B>(java.lang.Object&nbsp;query)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the specified value as the current query data,
after normalizing the pair delimiters.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#relative()">relative</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a copy of this LinkTool instance that has
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setForceRelative(boolean)"><CODE>setForceRelative(boolean)</CODE></A> set to true.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#relative(java.lang.Object)">relative</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a copy of the link with the specified directory-relative
URI reference set as the end of the path and <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setForceRelative(boolean)"><CODE>setForceRelative(boolean)</CODE></A>
set to true.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#remove(java.lang.Object)">remove</A></B>(java.lang.Object&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new LinkTool instance that has any
value(s) under the specified key removed from the query data.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#removeParam(java.lang.Object)">removeParam</A></B>(java.lang.Object&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removes the query pair(s) with the specified key from the
query data and returns the remove value(s), if any.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#root()">root</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new LinkTool instance that represents
the "root" of the current one, if it has one.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#scheme(java.lang.Object)">scheme</A></B>(java.lang.Object&nbsp;scheme)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new instance with the specified value set as its scheme.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#secure()">secure</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new instance with the scheme set to "https".</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#set(java.lang.Object, java.lang.Object)">set</A></B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets a new key=value pair to the existing query
data, overwriting any previous pair(s) that have
the same key.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setAppendParams(boolean)">setAppendParams</A></B>(boolean&nbsp;addParams)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets whether or not the <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setParam(java.lang.Object, java.lang.Object, boolean)"><CODE>setParam(java.lang.Object, java.lang.Object, boolean)</CODE></A> method
will override existing query values for the same key or simply append
the new value to a list of existing values.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setCharacterEncoding(java.lang.String)">setCharacterEncoding</A></B>(java.lang.String&nbsp;chrst)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setForceRelative(boolean)">setForceRelative</A></B>(boolean&nbsp;forceRelative)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets whether or not the <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#createURI()"><CODE>createURI()</CODE></A> method should ignore the
scheme, user, port and host values for non-opaque URIs, thus making
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#toString()"><CODE>toString()</CODE></A> print the link as a relative one, not an absolute
one.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setFragment(java.lang.Object)">setFragment</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the anchor for this instance and treats empty strings like null.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setFromURI(java.lang.Object)">setFromURI</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the specified value is null, this will set the scheme, userInfo,
host, port, path, query, and fragment all to their null-equivalent
values.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setHost(java.lang.Object)">setHost</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setParam(java.lang.Object, java.lang.Object, boolean)">setParam</A></B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value,
boolean&nbsp;append)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If there is no existing value for this key in the query, it
will simply add it and its value to the query.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setParams(java.lang.Object, boolean)">setParams</A></B>(java.lang.Object&nbsp;obj,
boolean&nbsp;append)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If append is false, this simply delegates to <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setQuery(java.lang.Object)"><CODE>setQuery(java.lang.Object)</CODE></A>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setPath(java.lang.Object)">setPath</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If this instance is not opaque and the specified value does
not start with a '/' character, then that will be prepended
automatically.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setPort(java.lang.Object)">setPort</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the specified object is null, this will set the port value
to -1 to indicate that.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setQuery(java.lang.Object)">setQuery</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the specified value is null, it will set the query to null.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setScheme(java.lang.Object)">setScheme</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This will treat empty strings like null values
and will trim any trailing ':' character.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setUserInfo(java.lang.Object)">setUserInfo</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setXHTML(boolean)">setXHTML</A></B>(boolean&nbsp;xhtml)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Controls the delimiter used for separating query data pairs.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#toQuery(java.util.Map)">toQuery</A></B>(java.util.Map&nbsp;parameters)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Converts the map of keys to values into a query string.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#toQuery(java.lang.Object, java.lang.Object)">toQuery</A></B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Turns the specified key and value into a properly encoded
query pair string.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#toString()">toString</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the full URI reference that's been built with this tool,
including the query string and anchor, e.g.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.net.URI</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#toURI(java.lang.Object)">toURI</A></B>(java.lang.Object&nbsp;obj)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Turns the specified object into a string and thereby a URI.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#uri(java.lang.Object)">uri</A></B>(java.lang.Object&nbsp;uri)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a copy of the link with the given URI reference set.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#user(java.lang.Object)">user</A></B>(java.lang.Object&nbsp;info)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new instance with the specified value
set as its user info.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.velocity.tools.generic.SafeConfig"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.velocity.tools.generic.<A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html" title="class in org.apache.velocity.tools.generic">SafeConfig</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html#configure(java.util.Map)">configure</A>, <A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html#isConfigLocked()">isConfigLocked</A>, <A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html#isSafeMode()">isSafeMode</A>, <A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html#setLockConfig(boolean)">setLockConfig</A>, <A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html#setSafeMode(boolean)">setSafeMode</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, finalize, getClass, notify, notifyAll, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="HTML_QUERY_DELIMITER"><!-- --></A><H3>
HTML_QUERY_DELIMITER</H3>
<PRE>
public static final java.lang.String <B>HTML_QUERY_DELIMITER</B></PRE>
<DL>
<DD>Standard HTML delimiter for query data ('&')
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.HTML_QUERY_DELIMITER">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="XHTML_QUERY_DELIMITER"><!-- --></A><H3>
XHTML_QUERY_DELIMITER</H3>
<PRE>
public static final java.lang.String <B>XHTML_QUERY_DELIMITER</B></PRE>
<DL>
<DD>XHTML delimiter for query data ('&amp;amp;')
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.XHTML_QUERY_DELIMITER">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="APPEND_PARAMS_KEY"><!-- --></A><H3>
APPEND_PARAMS_KEY</H3>
<PRE>
public static final java.lang.String <B>APPEND_PARAMS_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.APPEND_PARAMS_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FORCE_RELATIVE_KEY"><!-- --></A><H3>
FORCE_RELATIVE_KEY</H3>
<PRE>
public static final java.lang.String <B>FORCE_RELATIVE_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.FORCE_RELATIVE_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="DEFAULT_CHARSET"><!-- --></A><H3>
DEFAULT_CHARSET</H3>
<PRE>
public static final java.lang.String <B>DEFAULT_CHARSET</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.DEFAULT_CHARSET">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="DEFAULT_SCHEME"><!-- --></A><H3>
DEFAULT_SCHEME</H3>
<PRE>
public static final java.lang.String <B>DEFAULT_SCHEME</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.DEFAULT_SCHEME">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="SECURE_SCHEME"><!-- --></A><H3>
SECURE_SCHEME</H3>
<PRE>
public static final java.lang.String <B>SECURE_SCHEME</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.SECURE_SCHEME">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="URI_KEY"><!-- --></A><H3>
URI_KEY</H3>
<PRE>
public static final java.lang.String <B>URI_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.URI_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="SCHEME_KEY"><!-- --></A><H3>
SCHEME_KEY</H3>
<PRE>
public static final java.lang.String <B>SCHEME_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.SCHEME_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="USER_KEY"><!-- --></A><H3>
USER_KEY</H3>
<PRE>
public static final java.lang.String <B>USER_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.USER_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="HOST_KEY"><!-- --></A><H3>
HOST_KEY</H3>
<PRE>
public static final java.lang.String <B>HOST_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.HOST_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="PORT_KEY"><!-- --></A><H3>
PORT_KEY</H3>
<PRE>
public static final java.lang.String <B>PORT_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.PORT_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="PATH_KEY"><!-- --></A><H3>
PATH_KEY</H3>
<PRE>
public static final java.lang.String <B>PATH_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.PATH_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="QUERY_KEY"><!-- --></A><H3>
QUERY_KEY</H3>
<PRE>
public static final java.lang.String <B>QUERY_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.QUERY_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FRAGMENT_KEY"><!-- --></A><H3>
FRAGMENT_KEY</H3>
<PRE>
public static final java.lang.String <B>FRAGMENT_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.FRAGMENT_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="CHARSET_KEY"><!-- --></A><H3>
CHARSET_KEY</H3>
<PRE>
public static final java.lang.String <B>CHARSET_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.CHARSET_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="XHTML_MODE_KEY"><!-- --></A><H3>
XHTML_MODE_KEY</H3>
<PRE>
public static final java.lang.String <B>XHTML_MODE_KEY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.velocity.tools.generic.LinkTool.XHTML_MODE_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="LOG"><!-- --></A><H3>
LOG</H3>
<PRE>
protected org.apache.velocity.runtime.log.Log <B>LOG</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="scheme"><!-- --></A><H3>
scheme</H3>
<PRE>
protected java.lang.String <B>scheme</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="user"><!-- --></A><H3>
user</H3>
<PRE>
protected java.lang.String <B>user</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="host"><!-- --></A><H3>
host</H3>
<PRE>
protected java.lang.String <B>host</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="port"><!-- --></A><H3>
port</H3>
<PRE>
protected int <B>port</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="path"><!-- --></A><H3>
path</H3>
<PRE>
protected java.lang.String <B>path</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="query"><!-- --></A><H3>
query</H3>
<PRE>
protected java.util.Map <B>query</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="fragment"><!-- --></A><H3>
fragment</H3>
<PRE>
protected java.lang.String <B>fragment</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="charset"><!-- --></A><H3>
charset</H3>
<PRE>
protected java.lang.String <B>charset</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="queryDelim"><!-- --></A><H3>
queryDelim</H3>
<PRE>
protected java.lang.String <B>queryDelim</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="appendParams"><!-- --></A><H3>
appendParams</H3>
<PRE>
protected boolean <B>appendParams</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="forceRelative"><!-- --></A><H3>
forceRelative</H3>
<PRE>
protected boolean <B>forceRelative</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="opaque"><!-- --></A><H3>
opaque</H3>
<PRE>
protected boolean <B>opaque</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="self"><!-- --></A><H3>
self</H3>
<PRE>
protected final <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>self</B></PRE>
<DL>
<DL>
</DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="LinkTool()"><!-- --></A><H3>
LinkTool</H3>
<PRE>
public <B>LinkTool</B>()</PRE>
<DL>
<DD>Default constructor. Tool typically is configured before use.
<P>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="debug(java.lang.String, java.lang.Object...)"><!-- --></A><H3>
debug</H3>
<PRE>
protected final void <B>debug</B>(java.lang.String&nbsp;msg,
java.lang.Object...&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="debug(java.lang.String, java.lang.Throwable, java.lang.Object...)"><!-- --></A><H3>
debug</H3>
<PRE>
protected final void <B>debug</B>(java.lang.String&nbsp;msg,
java.lang.Throwable&nbsp;t,
java.lang.Object...&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="configure(org.apache.velocity.tools.generic.ValueParser)"><!-- --></A><H3>
configure</H3>
<PRE>
protected void <B>configure</B>(<A HREF="../../../../../org/apache/velocity/tools/generic/ValueParser.html" title="class in org.apache.velocity.tools.generic">ValueParser</A>&nbsp;props)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html#configure(org.apache.velocity.tools.generic.ValueParser)">SafeConfig</A></CODE></B></DD>
<DD>Does the actual configuration. This is protected, so
subclasses may share the same ValueParser and call configure
at any time, while preventing templates from doing so when
configure(Map) is locked.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html#configure(org.apache.velocity.tools.generic.ValueParser)">configure</A></CODE> in class <CODE><A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html" title="class in org.apache.velocity.tools.generic">SafeConfig</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="duplicate()"><!-- --></A><H3>
duplicate</H3>
<PRE>
protected <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>duplicate</B>()</PRE>
<DL>
<DD>Equivalent to clone, but with no checked exceptions.
If for some unfathomable reason clone() doesn't work,
this will throw a RuntimeException.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="duplicate(boolean)"><!-- --></A><H3>
duplicate</H3>
<PRE>
protected <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>duplicate</B>(boolean&nbsp;deep)</PRE>
<DL>
<DD>Equivalent to clone, but with no checked exceptions.
If for some unfathomable reason clone() doesn't work,
this will throw a RuntimeException. If doing a deep
clone, then the parameter Map will also be cloned.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setCharacterEncoding(java.lang.String)"><!-- --></A><H3>
setCharacterEncoding</H3>
<PRE>
public void <B>setCharacterEncoding</B>(java.lang.String&nbsp;chrst)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setXHTML(boolean)"><!-- --></A><H3>
setXHTML</H3>
<PRE>
public void <B>setXHTML</B>(boolean&nbsp;xhtml)</PRE>
<DL>
<DD><p>Controls the delimiter used for separating query data pairs.
By default, the standard '&' character is used.</p>
<p>This is not exposed to templates as this decision is best not
made at that level.</p>
<p>Subclasses may easily override the init() method to set this
appropriately and then call super.init()</p>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>xhtml</CODE> - if true, the XHTML query data delimiter ('&amp;amp;')
will be used. if false, then '&' will be used.<DT><B>See Also:</B><DD><a href="http://www.w3.org/TR/xhtml1/#C_12">Using Ampersands in Attribute Values (and Elsewhere)</a></DL>
</DD>
</DL>
<HR>
<A NAME="setAppendParams(boolean)"><!-- --></A><H3>
setAppendParams</H3>
<PRE>
public void <B>setAppendParams</B>(boolean&nbsp;addParams)</PRE>
<DL>
<DD>Sets whether or not the <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setParam(java.lang.Object, java.lang.Object, boolean)"><CODE>setParam(java.lang.Object, java.lang.Object, boolean)</CODE></A> method
will override existing query values for the same key or simply append
the new value to a list of existing values.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setForceRelative(boolean)"><!-- --></A><H3>
setForceRelative</H3>
<PRE>
public void <B>setForceRelative</B>(boolean&nbsp;forceRelative)</PRE>
<DL>
<DD>Sets whether or not the <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#createURI()"><CODE>createURI()</CODE></A> method should ignore the
scheme, user, port and host values for non-opaque URIs, thus making
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#toString()"><CODE>toString()</CODE></A> print the link as a relative one, not an absolute
one. NOTE: using <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#absolute()"><CODE>absolute()</CODE></A>, <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#absolute(java.lang.Object)"><CODE>absolute(Object)</CODE></A>,
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#relative()"><CODE>relative()</CODE></A>, or <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#relative(java.lang.Object)"><CODE>relative(Object)</CODE></A> will alter this
setting accordingly on the new instances they return.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setScheme(java.lang.Object)"><!-- --></A><H3>
setScheme</H3>
<PRE>
public void <B>setScheme</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>This will treat empty strings like null values
and will trim any trailing ':' character.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setUserInfo(java.lang.Object)"><!-- --></A><H3>
setUserInfo</H3>
<PRE>
public void <B>setUserInfo</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setHost(java.lang.Object)"><!-- --></A><H3>
setHost</H3>
<PRE>
public void <B>setHost</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setPort(java.lang.Object)"><!-- --></A><H3>
setPort</H3>
<PRE>
public void <B>setPort</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>If the specified object is null, this will set the port value
to -1 to indicate that. If it is non-null and cannot be converted
to an integer, then it will be set to -2 to indicate an error.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setPath(java.lang.Object)"><!-- --></A><H3>
setPath</H3>
<PRE>
public void <B>setPath</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>If this instance is not opaque and the specified value does
not start with a '/' character, then that will be prepended
automatically.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="appendPath(java.lang.Object)"><!-- --></A><H3>
appendPath</H3>
<PRE>
public void <B>appendPath</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>Uses <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#combinePath(java.lang.String, java.lang.String)"><CODE>combinePath(java.lang.String, java.lang.String)</CODE></A> to add the specified value
to the current <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getPath()"><CODE>getPath()</CODE></A> value. If the specified
value is null or this instance is opaque, then this is
a no-op.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="combinePath(java.lang.String, java.lang.String)"><!-- --></A><H3>
combinePath</H3>
<PRE>
protected java.lang.String <B>combinePath</B>(java.lang.String&nbsp;start,
java.lang.String&nbsp;end)</PRE>
<DL>
<DD>If end is null, this will return start and vice versa.
If neither is null, this will append the end to the start,
making sure that there is only one '/' character between
the two values.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setQuery(java.lang.Object)"><!-- --></A><H3>
setQuery</H3>
<PRE>
public void <B>setQuery</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>If the specified value is null, it will set the query to null.
If a Map, it will copy all those values into a new LinkedHashMap and
replace any current query value with that. If it is a String,
it will use <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#parseQuery(java.lang.String)"><CODE>parseQuery(String)</CODE></A> to parse it into a map
of keys to values.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="normalizeQuery(java.lang.String)"><!-- --></A><H3>
normalizeQuery</H3>
<PRE>
protected java.lang.String <B>normalizeQuery</B>(java.lang.String&nbsp;qs)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="toQuery(java.util.Map)"><!-- --></A><H3>
toQuery</H3>
<PRE>
public java.lang.String <B>toQuery</B>(java.util.Map&nbsp;parameters)</PRE>
<DL>
<DD>Converts the map of keys to values into a query string.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="appendQuery(java.lang.Object)"><!-- --></A><H3>
appendQuery</H3>
<PRE>
public void <B>appendQuery</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>Uses <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#combineQuery(java.lang.String, java.lang.String)"><CODE>combineQuery(java.lang.String, java.lang.String)</CODE></A> to append the specified value
to the current <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getQuery()"><CODE>getQuery()</CODE></A> value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setParam(java.lang.Object, java.lang.Object, boolean)"><!-- --></A><H3>
setParam</H3>
<PRE>
public void <B>setParam</B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value,
boolean&nbsp;append)</PRE>
<DL>
<DD>If there is no existing value for this key in the query, it
will simply add it and its value to the query. If the key
already is present in the query and append
is true, this will add the specified value to those
already under that key. If <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#appendParams"><CODE>appendParams</CODE></A> is
false, this will override the existing values with the
specified new value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="appendParam(java.lang.String, java.lang.Object)"><!-- --></A><H3>
appendParam</H3>
<PRE>
private void <B>appendParam</B>(java.lang.String&nbsp;key,
java.lang.Object&nbsp;value)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="putParam(java.lang.Object, java.lang.Object)"><!-- --></A><H3>
putParam</H3>
<PRE>
private void <B>putParam</B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="addToList(java.util.List, java.lang.Object)"><!-- --></A><H3>
addToList</H3>
<PRE>
private void <B>addToList</B>(java.util.List&nbsp;vals,
java.lang.Object&nbsp;value)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setParams(java.lang.Object, boolean)"><!-- --></A><H3>
setParams</H3>
<PRE>
public void <B>setParams</B>(java.lang.Object&nbsp;obj,
boolean&nbsp;append)</PRE>
<DL>
<DD>If append is false, this simply delegates to <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setQuery(java.lang.Object)"><CODE>setQuery(java.lang.Object)</CODE></A>.
Otherwise, if the specified object is null, it does nothing. If the object
is not a Map, it will turn it into a String and use <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#parseQuery(java.lang.String)"><CODE>parseQuery(java.lang.String)</CODE></A> to
parse it. Once it is a Map, it will iterate through the entries appending
each key/value to the current query data.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="removeParam(java.lang.Object)"><!-- --></A><H3>
removeParam</H3>
<PRE>
public java.lang.Object <B>removeParam</B>(java.lang.Object&nbsp;key)</PRE>
<DL>
<DD>Removes the query pair(s) with the specified key from the
query data and returns the remove value(s), if any.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="handleParamsBoolean(boolean)"><!-- --></A><H3>
handleParamsBoolean</H3>
<PRE>
protected void <B>handleParamsBoolean</B>(boolean&nbsp;keep)</PRE>
<DL>
<DD>In this class, this method ignores true values. If passed a false value,
it will call <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setQuery(java.lang.Object)"><CODE>setQuery(java.lang.Object)</CODE></A> with a null value to clear all query data.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="combineQuery(java.lang.String, java.lang.String)"><!-- --></A><H3>
combineQuery</H3>
<PRE>
protected java.lang.String <B>combineQuery</B>(java.lang.String&nbsp;current,
java.lang.String&nbsp;add)</PRE>
<DL>
<DD>If the second param is null or empty, this will simply return the first
and vice versa. Otherwise, it will trim any '?'
at the start of the second param and any '&amp;' or '&amp;amp;' at the
end of the first one, then combine the two, making sure that they
are separated by only one delimiter.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="toQuery(java.lang.Object, java.lang.Object)"><!-- --></A><H3>
toQuery</H3>
<PRE>
protected java.lang.String <B>toQuery</B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value)</PRE>
<DL>
<DD>Turns the specified key and value into a properly encoded
query pair string. If the value is an array or List, then
this will create a delimited string of query pairs, reusing
the same key for each of the values separately.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="appendAsArray(java.lang.StringBuilder, java.lang.Object, java.lang.Object[])"><!-- --></A><H3>
appendAsArray</H3>
<PRE>
protected void <B>appendAsArray</B>(java.lang.StringBuilder&nbsp;out,
java.lang.Object&nbsp;key,
java.lang.Object[]&nbsp;arr)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="parseQuery(java.lang.String)"><!-- --></A><H3>
parseQuery</H3>
<PRE>
protected java.util.Map&lt;java.lang.String,java.lang.Object&gt; <B>parseQuery</B>(java.lang.String&nbsp;query)</PRE>
<DL>
<DD>Uses <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#normalizeQuery(java.lang.String)"><CODE>normalizeQuery(java.lang.String)</CODE></A> to make all delimiters in the
specified query string match the current query delimiter
and then uses <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#parseQuery(java.lang.String, java.lang.String)"><CODE>parseQuery(String,String)</CODE></A> to parse it
according to that same delimiter.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="parseQuery(java.lang.String, java.lang.String)"><!-- --></A><H3>
parseQuery</H3>
<PRE>
protected java.util.Map&lt;java.lang.String,java.lang.Object&gt; <B>parseQuery</B>(java.lang.String&nbsp;query,
java.lang.String&nbsp;queryDelim)</PRE>
<DL>
<DD>This will use the specified query delimiter to parse the specified
query string into a map of keys to values.
If there are multiple query pairs in the string that have the same
key, then the values will be combined into a single List value
associated with that key.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setFragment(java.lang.Object)"><!-- --></A><H3>
setFragment</H3>
<PRE>
public void <B>setFragment</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>Sets the anchor for this instance and treats empty strings like null.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setFromURI(java.lang.Object)"><!-- --></A><H3>
setFromURI</H3>
<PRE>
protected boolean <B>setFromURI</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>If the specified value is null, this will set the scheme, userInfo,
host, port, path, query, and fragment all to their null-equivalent
values. Otherwise, this will
convert the specified object into a <CODE>URI</CODE>, then those same
values from the URI object to this instance.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="toURI(java.lang.Object)"><!-- --></A><H3>
toURI</H3>
<PRE>
protected java.net.URI <B>toURI</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>Turns the specified object into a string and thereby a URI.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="createURI()"><!-- --></A><H3>
createURI</H3>
<PRE>
protected java.net.URI <B>createURI</B>()</PRE>
<DL>
<DD>Tries to create a URI from the current port, opacity, scheme,
userInfo, host, path, query and fragment set for this instance,
using the <CODE>URI</CODE> constructor that is appropriate to the opacity.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getCharacterEncoding()"><!-- --></A><H3>
getCharacterEncoding</H3>
<PRE>
public java.lang.String <B>getCharacterEncoding</B>()</PRE>
<DL>
<DD>Returns the configured charset used by the <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#encode(java.lang.Object)"><CODE>encode(java.lang.Object)</CODE></A> and
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#decode(java.lang.Object)"><CODE>decode(java.lang.Object)</CODE></A> methods.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isXHTML()"><!-- --></A><H3>
isXHTML</H3>
<PRE>
public boolean <B>isXHTML</B>()</PRE>
<DL>
<DD>Returns true if the query delimiter used by this instance is
using <code>&amp;amp;</code> as the delimiter for query data pairs
or just using <code>&amp;</code>.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getAppendParams()"><!-- --></A><H3>
getAppendParams</H3>
<PRE>
public boolean <B>getAppendParams</B>()</PRE>
<DL>
<DD>Returns true if <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#param(java.lang.Object, java.lang.Object)"><CODE>param(Object,Object)</CODE></A> appends values;
false if the method overwrites existing value(s) for the specified key.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="scheme(java.lang.Object)"><!-- --></A><H3>
scheme</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>scheme</B>(java.lang.Object&nbsp;scheme)</PRE>
<DL>
<DD>Returns a new instance with the specified value set as its scheme.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="secure()"><!-- --></A><H3>
secure</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>secure</B>()</PRE>
<DL>
<DD>Returns a new instance with the scheme set to "https".
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="insecure()"><!-- --></A><H3>
insecure</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>insecure</B>()</PRE>
<DL>
<DD>Returns a new instance with the scheme set to "http".
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getScheme()"><!-- --></A><H3>
getScheme</H3>
<PRE>
public java.lang.String <B>getScheme</B>()</PRE>
<DL>
<DD>Return the scheme value for this instance.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isSecure()"><!-- --></A><H3>
isSecure</H3>
<PRE>
public boolean <B>isSecure</B>()</PRE>
<DL>
<DD>Returns true if this instance's scheme is "https".
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isOpaque()"><!-- --></A><H3>
isOpaque</H3>
<PRE>
public boolean <B>isOpaque</B>()</PRE>
<DL>
<DD>Returns true if this instance represents an opaque URI.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><CODE>URI</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="user(java.lang.Object)"><!-- --></A><H3>
user</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>user</B>(java.lang.Object&nbsp;info)</PRE>
<DL>
<DD>Returns a new instance with the specified value
set as its user info.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getUser()"><!-- --></A><H3>
getUser</H3>
<PRE>
public java.lang.String <B>getUser</B>()</PRE>
<DL>
<DD>Returns the <CODE>URI.getUserInfo()</CODE> value for this instance.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="host(java.lang.Object)"><!-- --></A><H3>
host</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>host</B>(java.lang.Object&nbsp;host)</PRE>
<DL>
<DD>Returns a new instance with the specified value set as its
host. If no scheme has yet been set, the new instance will
also have its scheme set to the <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#DEFAULT_SCHEME"><CODE>DEFAULT_SCHEME</CODE></A> (http).
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getHost()"><!-- --></A><H3>
getHost</H3>
<PRE>
public java.lang.String <B>getHost</B>()</PRE>
<DL>
<DD>Return the host value for this instance.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="port(java.lang.Object)"><!-- --></A><H3>
port</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>port</B>(java.lang.Object&nbsp;port)</PRE>
<DL>
<DD>Returns a new instance with the specified value set
as its port number. If the value cannot be parsed into
an integer, the returned instance will always return
null for <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#toString()"><CODE>toString()</CODE></A> and other
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#createURI()"><CODE>createURI()</CODE></A>-dependent methods to alert the user
to the error.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getPort()"><!-- --></A><H3>
getPort</H3>
<PRE>
public java.lang.Integer <B>getPort</B>()</PRE>
<DL>
<DD>Returns the port value, if any.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="path(java.lang.Object)"><!-- --></A><H3>
path</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>path</B>(java.lang.Object&nbsp;pth)</PRE>
<DL>
<DD>Returns a new instance with the specified value
set as its path.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getPath()"><!-- --></A><H3>
getPath</H3>
<PRE>
public java.lang.String <B>getPath</B>()</PRE>
<DL>
<DD>Returns the current path value for this instance.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="append(java.lang.Object)"><!-- --></A><H3>
append</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>append</B>(java.lang.Object&nbsp;pth)</PRE>
<DL>
<DD>Appends the given value to the end of the current
path value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getDirectory()"><!-- --></A><H3>
getDirectory</H3>
<PRE>
public java.lang.String <B>getDirectory</B>()</PRE>
<DL>
<DD>Returns the directory stack
in the set <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getPath()"><CODE>getPath()</CODE></A> value, by just trimming
off all that follows the last "/".
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getFile()"><!-- --></A><H3>
getFile</H3>
<PRE>
public java.lang.String <B>getFile</B>()</PRE>
<DL>
<DD>Returns the last section of the path,
which is all that follows the final "/".
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getRoot()"><!-- --></A><H3>
getRoot</H3>
<PRE>
public java.lang.String <B>getRoot</B>()</PRE>
<DL>
<DD>Returns the "root" for this URI, if it has one.
This does not stick close to URI dogma and will
try to insert the default scheme if there is none,
and will return null if there is no host or if there
was an error when the port value was last set. It will
return null for any opaque URLs as well, as those have
no host or port.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="root()"><!-- --></A><H3>
root</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>root</B>()</PRE>
<DL>
<DD>Returns a new LinkTool instance that represents
the "root" of the current one, if it has one.
This essentially calls <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#absolute()"><CODE>absolute()</CODE></A> and
sets the path, query, and fragment to null on
the returned instance.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getRoot()"><CODE>getRoot()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="directory()"><!-- --></A><H3>
directory</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>directory</B>()</PRE>
<DL>
<DD>Returns a new LinkTool instance with
the path set to the result of <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getDirectory()"><CODE>getDirectory()</CODE></A>
and the query and fragment set to null.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isRelative()"><!-- --></A><H3>
isRelative</H3>
<PRE>
public boolean <B>isRelative</B>()</PRE>
<DL>
<DD>Returns true if this instance is being forced to
return relative URIs or has a null scheme value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="relative()"><!-- --></A><H3>
relative</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>relative</B>()</PRE>
<DL>
<DD>Returns a copy of this LinkTool instance that has
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setForceRelative(boolean)"><CODE>setForceRelative(boolean)</CODE></A> set to true.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="relative(java.lang.Object)"><!-- --></A><H3>
relative</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>relative</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD><p>Returns a copy of the link with the specified directory-relative
URI reference set as the end of the path and <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setForceRelative(boolean)"><CODE>setForceRelative(boolean)</CODE></A>
set to true. If the specified relative path is null, that is treated
the same as an empty path.</p>
Example:<br>
<code>&lt;a href='$link.relative("/login/index.vm")'&gt;Login Page&lt;/a&gt;</code><br>
produces something like</br>
<code>&lt;a href="/myapp/login/index.vm"&gt;Login Page&lt;/a&gt;</code><br>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>obj</CODE> - A directory-relative URI reference (e.g. file path in current directory)
<DT><B>Returns:</B><DD>a new instance of LinkTool with the specified changes<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#relative()"><CODE>relative()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getContextPath()"><!-- --></A><H3>
getContextPath</H3>
<PRE>
public java.lang.String <B>getContextPath</B>()</PRE>
<DL>
<DD>At this level, this only returns the result of <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getDirectory()"><CODE>getDirectory()</CODE></A>.
It is here as an extension hook for subclasses to change the
"context" for relative links.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#relative(java.lang.Object)"><CODE>relative(Object)</CODE></A>,
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getDirectory()"><CODE>getDirectory()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="isAbsolute()"><!-- --></A><H3>
isAbsolute</H3>
<PRE>
public boolean <B>isAbsolute</B>()</PRE>
<DL>
<DD>Returns true if this instance has a scheme value
and is not being forced to create relative URIs.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="absolute()"><!-- --></A><H3>
absolute</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>absolute</B>()</PRE>
<DL>
<DD>Returns a copy of this LinkTool instance that has
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#setForceRelative(boolean)"><CODE>setForceRelative(boolean)</CODE></A> set to false and sets the
scheme to the "http" if no scheme has been set yet.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="absolute(java.lang.Object)"><!-- --></A><H3>
absolute</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>absolute</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD><p>Returns a copy of the link with the specified URI reference
either used as or converted to an absolute (non-relative)
URI reference. Unless the specified URI contains a query
or anchor, those values will not be overwritten when using
this method.</p>
Example:<br>
<code>&lt;a href='$link.absolute("login/index.vm")'&gt;Login Page&lt;/a&gt;</code><br>
produces something like<br/>
<code>&lt;a href="http://myserver.net/myapp/login/index.vm"&gt;Login Page&lt;/a&gt;</code>;<br>
<code>&lt;a href='$link.absolute("/login/index.vm")'&gt;Login Page&lt;/a&gt;</code><br>
produces something like<br/>
<code>&lt;a href="http://myserver.net/login/index.vm"&gt;Login Page&lt;/a&gt;</code>;<br>
and<br>
<code>&lt;a href='$link.absolute("http://theirserver.com/index.jsp")'&gt;Their, Inc.&lt;/a&gt;</code><br>
produces something like<br/>
<code>&lt;a href="http://theirserver.net/index.jsp"&gt;Their, Inc.&lt;/a&gt;</code><br>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>obj</CODE> - A root-relative or context-relative path or an absolute URI.
<DT><B>Returns:</B><DD>a new instance of LinkTool with the specified path or URI<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#absolute()"><CODE>absolute()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="uri(java.lang.Object)"><!-- --></A><H3>
uri</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>uri</B>(java.lang.Object&nbsp;uri)</PRE>
<DL>
<DD><p>Returns a copy of the link with the given URI reference set.
Few changes are applied to the given URI reference. The URI
reference can be absolute, server-relative, relative and may
contain query parameters. This method will overwrite all previous
settings for scheme, host port, path, query and anchor.</p>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>uri</CODE> - URI reference to set
<DT><B>Returns:</B><DD>a new instance of LinkTool</DL>
</DD>
</DL>
<HR>
<A NAME="getUri()"><!-- --></A><H3>
getUri</H3>
<PRE>
public java.net.URI <B>getUri</B>()</PRE>
<DL>
<DD>If the tool is not in "safe mode"--which it is by default--
this will return the <CODE>URI</CODE> representation of this instance,
if any.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/velocity/tools/generic/SafeConfig.html#isSafeMode()"><CODE>SafeConfig.isSafeMode()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getBaseRef()"><!-- --></A><H3>
getBaseRef</H3>
<PRE>
public java.lang.String <B>getBaseRef</B>()</PRE>
<DL>
<DD>Returns the full URI of this template without any query data.
e.g. <code>http://myserver.net/myapp/stuff/View.vm</code>
Note! The returned String will not represent any URI reference
or query data set for this LinkTool. A typical application of
this method is with the HTML base tag. For example:
<code>&lt;base href="$link.baseRef"&gt;</code>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="query(java.lang.Object)"><!-- --></A><H3>
query</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>query</B>(java.lang.Object&nbsp;query)</PRE>
<DL>
<DD>Sets the specified value as the current query data,
after normalizing the pair delimiters. This overrides
any existing query.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getQuery()"><!-- --></A><H3>
getQuery</H3>
<PRE>
public java.lang.String <B>getQuery</B>()</PRE>
<DL>
<DD>Returns the current query as a string, if any.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="param(java.lang.Object, java.lang.Object)"><!-- --></A><H3>
param</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>param</B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value)</PRE>
<DL>
<DD><p>Adds a key=value pair to the query data. Whether
this new query pair is appended to the current query
or overwrites any previous pair(s) with the same key
is controlled by the <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getAppendParams()"><CODE>getAppendParams()</CODE></A> value.
The default behavior is to append.</p>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>key</CODE> - key of new query parameter<DD><CODE>value</CODE> - value of new query parameter
<DT><B>Returns:</B><DD>a new instance of LinkTool</DL>
</DD>
</DL>
<HR>
<A NAME="append(java.lang.Object, java.lang.Object)"><!-- --></A><H3>
append</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>append</B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value)</PRE>
<DL>
<DD>Appends a new key=value pair to the existing query
data.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>key</CODE> - key of new query parameter<DD><CODE>value</CODE> - value of new query parameter
<DT><B>Returns:</B><DD>a new instance of LinkTool</DL>
</DD>
</DL>
<HR>
<A NAME="set(java.lang.Object, java.lang.Object)"><!-- --></A><H3>
set</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>set</B>(java.lang.Object&nbsp;key,
java.lang.Object&nbsp;value)</PRE>
<DL>
<DD>Sets a new key=value pair to the existing query
data, overwriting any previous pair(s) that have
the same key.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>key</CODE> - key of new query parameter<DD><CODE>value</CODE> - value of new query parameter
<DT><B>Returns:</B><DD>a new instance of LinkTool</DL>
</DD>
</DL>
<HR>
<A NAME="remove(java.lang.Object)"><!-- --></A><H3>
remove</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>remove</B>(java.lang.Object&nbsp;key)</PRE>
<DL>
<DD>Returns a new LinkTool instance that has any
value(s) under the specified key removed from the query data.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>key</CODE> - key of the query pair(s) to be removed
<DT><B>Returns:</B><DD>a new instance of LinkTool</DL>
</DD>
</DL>
<HR>
<A NAME="params(java.lang.Object)"><!-- --></A><H3>
params</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>params</B>(java.lang.Object&nbsp;parameters)</PRE>
<DL>
<DD>This method can do two different things. If you pass in a
boolean, it will create a new LinkTool duplicate and call
<A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#handleParamsBoolean(boolean)"><CODE>handleParamsBoolean(boolean)</CODE></A> on it. In this class, true
values do nothing (subclasses may have use for them), but false
values will clear out all params in the query for that instance.
If you pass in a query string or a Map of parameters, those
values will be added to the new LinkTool, either overwriting
previous value(s) with those keys or appending to them,
depending on the <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#getAppendParams()"><CODE>getAppendParams()</CODE></A> value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>parameters</CODE> - a boolean or new query data (either Map or query string)
<DT><B>Returns:</B><DD>a new instance of LinkTool</DL>
</DD>
</DL>
<HR>
<A NAME="getParams()"><!-- --></A><H3>
getParams</H3>
<PRE>
public java.util.Map <B>getParams</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="anchor(java.lang.Object)"><!-- --></A><H3>
anchor</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>anchor</B>(java.lang.Object&nbsp;anchor)</PRE>
<DL>
<DD><p>Returns a copy of the link with the specified anchor to be
added to the end of the generated hyperlink.</p>
Example:<br>
<code>&lt;a href='$link.setAnchor("foo")'&gt;Foo&lt;/a&gt;</code><br>
produces something like</br>
<code>&lt;a href="#foo"&gt;Foo&lt;/a&gt;</code><br>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>anchor</CODE> - an internal document reference
<DT><B>Returns:</B><DD>a new instance of LinkTool with the set anchor</DL>
</DD>
</DL>
<HR>
<A NAME="getAnchor()"><!-- --></A><H3>
getAnchor</H3>
<PRE>
public java.lang.String <B>getAnchor</B>()</PRE>
<DL>
<DD>Returns the anchor (internal document reference) set for this link.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getSelf()"><!-- --></A><H3>
getSelf</H3>
<PRE>
public <A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html" title="class in org.apache.velocity.tools.generic">LinkTool</A> <B>getSelf</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="toString()"><!-- --></A><H3>
toString</H3>
<PRE>
public java.lang.String <B>toString</B>()</PRE>
<DL>
<DD>Returns the full URI reference that's been built with this tool,
including the query string and anchor, e.g.
<code>http://myserver.net/myapp/stuff/View.vm?id=42&type=blue#foo</code>.
Typically, it is not necessary to call this method explicitely.
Velocity will call the toString() method automatically to obtain
a representable version of an object.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE>toString</CODE> in class <CODE>java.lang.Object</CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="decodeQueryPercents(java.lang.String)"><!-- --></A><H3>
decodeQueryPercents</H3>
<PRE>
protected java.lang.String <B>decodeQueryPercents</B>(java.lang.String&nbsp;url)</PRE>
<DL>
<DD>This is an ugly (but fast) hack that's needed because URI encodes
things that we don't need encoded while not encoding things
that we do need encoded. So, we have to encode query data
before creating the URI to ensure they are properly encoded,
but then URI encodes all the % from that encoding. Here,
we isolate the query data and manually decode the encoded
%25 in that section back to %, without decoding anything else.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="equals(java.lang.Object)"><!-- --></A><H3>
equals</H3>
<PRE>
public boolean <B>equals</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>This instance is considered equal to any
LinkTool instance whose toString() method returns a
String equal to that returned by this instance's toString()
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE>equals</CODE> in class <CODE>java.lang.Object</CODE></DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/velocity/tools/generic/LinkTool.html#toString()"><CODE>toString()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="hashCode()"><!-- --></A><H3>
hashCode</H3>
<PRE>
public int <B>hashCode</B>()</PRE>
<DL>
<DD>Returns the hash code for the result of toString().
If toString() returns <code>null</code> (yes, we do break that contract),
this will return <code>-1</code>.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE>hashCode</CODE> in class <CODE>java.lang.Object</CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="encode(java.lang.Object)"><!-- --></A><H3>
encode</H3>
<PRE>
public java.lang.String <B>encode</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>Delegates encoding of the specified url content to
<CODE>URLEncoder.encode(java.lang.String)</CODE> using the configured character encoding.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>String - the encoded url.</DL>
</DD>
</DL>
<HR>
<A NAME="decode(java.lang.Object)"><!-- --></A><H3>
decode</H3>
<PRE>
public java.lang.String <B>decode</B>(java.lang.Object&nbsp;obj)</PRE>
<DL>
<DD>Delegates decoding of the specified url content to
<CODE>URLDecoder.decode(java.lang.String)</CODE> using the configured character encoding.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>String - the decoded url.</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/IteratorTool.html" title="class in org.apache.velocity.tools.generic"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/velocity/tools/generic/ListTool.html" title="class in org.apache.velocity.tools.generic"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/velocity/tools/generic/LinkTool.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="LinkTool.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright (c) 2003-2007 Apache Software Foundation
</BODY>
</HTML>