enable filtering

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/proxy/trunk@1585504 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/site/markdown/index.md b/src/site/markdown/index.md.vm
similarity index 95%
rename from src/site/markdown/index.md
rename to src/site/markdown/index.md.vm
index 2925e75..06aae77 100644
--- a/src/site/markdown/index.md
+++ b/src/site/markdown/index.md.vm
@@ -17,7 +17,10 @@
 under the License.
 -->
 
-## Commons Proxy: Dynamic Proxies Made Easy
+#set( $h2 = $StringUtils.repeat("#", 2) )
+#set( $h3 = $StringUtils.repeat("#", 3) )
+
+$h2 Commons Proxy: Dynamic Proxies Made Easy
 
   The *Proxy* design pattern ([GoF][]) allows you to provide
   "a surrogate or placeholder for another object to control access to it".
@@ -40,7 +43,7 @@
   *Commons Proxy* supports dynamic proxy generation using proxy factories,
   object providers, invokers, and interceptors.
 
-## Proxy Factories
+$h2 Proxy Factories
   A [ProxyFactory][] encapsulates all necessary proxying logic away from your
   code. Switching proxying techniques/technologies is as simple as using a
   different proxy factory implementation class.
@@ -64,11 +67,11 @@
      method invocation as it makes its way to the target of the invocation.
   * **Invoker Proxy** - uses an [Invoker][] to handle all method invocations.
 
-## Object Providers
+$h2 Object Providers
   [Object providers][providers] provide the objects which will be the
   "target" of a proxy. There are two types of object providers:
 
-### Core Object Providers
+$h3 Core Object Providers
   A core object provider provides a core implementation object.
   *Commons Proxy* supports many different implementations including:
 
@@ -77,14 +80,14 @@
   * **Cloning** - Reflectively calls the public `clone()` method
                   on a `Cloneable` object
 
-### Decorating Object Providers
+$h3 Decorating Object Providers
   A decorating object provider decorates the object returned by another
   provider. *Commons Proxy* provides a few implementations including:
 
   * **Singleton** - Calls a nested provider at most once, returning that
                     original value on all subsequent invocations
 
-## Invokers
+$h2 Invokers
   An [Invoker][] handles all method invocations using a single method.
   *Commons Proxy* provides a few invoker implementations:
 
@@ -94,7 +97,7 @@
   * **Invocation Handler Adapter** - Adapts an implementation of the JDK
 [InvocationHandler][] interface as a *Commons Proxy* [Invoker][].
 
-## Interceptors
+$h2 Interceptors
   *Commons Proxy* allows you to "intercept" a method invocation using
   an [Interceptor][]. Interceptors provide *rudimentary* aspect-oriented
   programming (AOP) support, allowing you to alter the parameters/results
@@ -107,25 +110,25 @@
   * **Switch** - provides a fluent API to configure the handling
                  of invoked methods
 
-## Serialization
+$h2 Serialization
   The proxies created by the provided proxy factories are `Serializable` in
   most cases. For more complex cases *Commons Proxy* provides basic support
   for the "serialization proxy" pattern. See
   [org.apache.commons.proxy.serialization][serializationproxy] for details.
 
-## Stubbing
+$h2 Stubbing
   The [StubBuilder][] class allows you to create a proxy with customized
 behavior specified by a typesafe DSL. The [AnnotationBuilder][] variant
 provides a simple way to create Java annotation instances at runtime.
 
-## Releases
+$h2 Releases
   The latest version is v1.0. - [Download now!][download]
 
   For previous releases, see the [Apache archive][archive].
 
   _**Note:** The 1.x releases are compatible with JDK1.4+._
 
-## Support
+$h2 Support
   The [Commons mailing lists][mailing-lists] act as the main support forum.
   The `user` list is suitable for most library usage queries.
   The `dev` list is intended for the development discussion.