commit bc23d586fd693415004e1ab567bb54feb8e8116d
Author:     Mauro Talevi <mauro.tal...@aquilonia.org>
AuthorDate: Tue Apr 24 21:38:36 2012 +0200
Commit:     Mauro Talevi <mauro.tal...@aquilonia.org>
CommitDate: Tue Apr 24 21:38:36 2012 +0200

    JBEHAVE-718:  Updated docs.

diff --git a/distribution/src/site/content/tabular-parameters.html 
b/distribution/src/site/content/tabular-parameters.html
index 2571908..b9f1a23 100755
--- a/distribution/src/site/content/tabular-parameters.html
+++ b/distribution/src/site/content/tabular-parameters.html
@@ -175,8 +175,48 @@ can specify an optional parsing property:</p>
 !-- Another commented row --!
 !value m1!value m2! .... !value mn!
 </pre>
+</p>
+
+<h2>Using table transformers</h2>
 
+<p>
+Table transformers allow the table to be transformed via an inlined property.  
E.g. to transform from a landscape table form we can to use the pre-registered 
transformer:
+<pre class="brush: plain">
+{transformer=FROM_LANDSCAPE}
+|header 1|value 11| ... | value m1|
+...
+|header n|value 1n| .... !value mn!
+</pre>
+Or one can define our own custom transformer
+<pre class="brush: plain">
+{transformer=FROM_MY_FORMAT}
+...
+</pre>
+In this case the custom transformer needs to be registered by name with the <a
+    
href="javadoc/core/org/jbehave/core/model/TableTransformers.html">TableTransformers</a>
 via the <a
+    
href="javadoc/core/org/jbehave/core/model/ExamplesTableFactory.html">ExamplesTableFactory</a>:
 </p>
+<script type="syntaxhighlighter" class="brush: java">
+<![CDATA[
+        TableTransformers tableTransformers = new TableTransformers();
+        tableTransformers.useTransformer("FROM_MY_FORMAT", new 
TableTransformer(){
+
+            public String transform(String tableAsString, Properties 
properties) {
+                return ...; // transform as required
+            }
+            
+        });
+        ExamplesTableFactory tableFactory = new 
ExamplesTableFactory(tableTransformers);
+]]>
+</script>
+<p>The custom table factory then needs to be configured to used by the 
parameter converters and the story parser:</p>
+<script type="syntaxhighlighter" class="brush: java">
+<![CDATA[
+        new MostUsefulConfiguration()
+                .useParameterConverters(new 
ParameterConverters().addConverters(new ExamplesTableConverter(tableFactory)))
+                .useStoryParser(new RegexStoryParser(tableFactory))
+]]>
+</script>
 
 <h2>Loading tabular parameter from an external resource</h2>
 
diff --git 
a/jbehave-core/src/main/java/org/jbehave/core/model/ExamplesTable.java 
b/jbehave-core/src/main/java/org/jbehave/core/model/ExamplesTable.java
index e660a1b..101271e 100755
--- a/jbehave-core/src/main/java/org/jbehave/core/model/ExamplesTable.java
+++ b/jbehave-core/src/main/java/org/jbehave/core/model/ExamplesTable.java
@@ -111,6 +111,7 @@ import static java.util.regex.Pattern.compile;
  * 
  * The transformer needs to be registered by name via the
  * {@link TableTransformers#useTransformer(String, TableTransformer)}.
+ * A few transformers are already registered by default in {@link 
TableTransformers}.
  * </p>
  * 
  * <p>



Reply via email to