This is an automated email from the ASF dual-hosted git repository. acosentino pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit f9abcdda1e3224f728354788c33ef251cf75174c Author: Roberto Flores <betoflow...@gmail.com> AuthorDate: Sun Aug 4 18:18:15 2019 -0500 Improve documentation --- .../src/main/docs/any23-dataformat.adoc | 51 +++++++++++++--------- .../camel/model/dataformat/Any23DataFormat.java | 21 ++++++++- .../modules/ROOT/pages/any23-dataformat.adoc | 51 +++++++++++++--------- .../springboot/Any23DataFormatConfiguration.java | 15 +++++++ 4 files changed, 97 insertions(+), 41 deletions(-) diff --git a/components/camel-any23/src/main/docs/any23-dataformat.adoc b/components/camel-any23/src/main/docs/any23-dataformat.adoc index 7e51ad2..3f6450c 100644 --- a/components/camel-any23/src/main/docs/any23-dataformat.adoc +++ b/components/camel-any23/src/main/docs/any23-dataformat.adoc @@ -5,7 +5,6 @@ Camel Any23 is a DataFormat that uses the Apache Anything To Triples (Any23) lib The main functionality of this DataFormat focuses on its Unmarshal method which extracts RDF triplets from compatible pages, in a wide variety of RDF syntaxes. - *Available as of Camel version 3.0* Any23 is a Data Format that is intended to convert HTML from a site (or file) into rdf. @@ -20,10 +19,10 @@ The Any23 dataformat supports 5 options, which are listed below. [width="100%",cols="2s,1m,1m,6",options="header"] |=== | Name | Default | Java Type | Description -| outputFormat | RDF4JMODEL | Any23Type | -| configurations | | Map | -| extractors | | List | -| baseURI | | String | +| outputFormat | RDF4JMODEL | Any23Type | What RDF syntax to unmarshal as, can be: NTRIPLES, TURTLE, NQUADS, RDFXML, JSONLD, RDFJSON, RDF4JMODEL. It is by default: RDF4JMODEL. +| configurations | | Map | Configurations for Apache Any23 as key-value pairs in order to customize the extraction process. The list of supported parameters can be found here. If not provided, a default configuration is used. +| extractors | | List | List of Any23 extractors to be used in the unmarshal operation. A list of the available extractors can be found here here. If not provided, all the available extractors are used. +| baseURI | | String | The URI to use as base for building RDF entities if only relative paths are provided. | contentTypeHeader | false | Boolean | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. |=== // dataformat options: END @@ -50,11 +49,11 @@ The component supports 5 options, which are listed below. [width="100%",cols="2,5,^1,2",options="header"] |=== | Name | Description | Default | Type -| *camel.dataformat.any23.base-u-r-i* | | | String -| *camel.dataformat.any23.configurations* | | | String +| *camel.dataformat.any23.base-u-r-i* | The URI to use as base for building RDF entities if only relative paths are provided. | | String +| *camel.dataformat.any23.configurations* | Configurations for Apache Any23 as key-value pairs in order to customize the extraction process. The list of supported parameters can be found here. If not provided, a default configuration is used. The option is a java.util.Map<java.lang.String,java.lang.String> type. | | String | *camel.dataformat.any23.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean | *camel.dataformat.any23.enabled* | Whether to enable auto configuration of the any23 data format. This is enabled by default. | | Boolean -| *camel.dataformat.any23.extractors* | | | List +| *camel.dataformat.any23.extractors* | List of Any23 extractors to be used in the unmarshal operation. A list of the available extractors can be found here here. If not provided, all the available extractors are used. | | List |=== // spring-boot-auto-configure options: END @@ -78,20 +77,32 @@ to unmarshal using Spring [source,java] ----------------------------------------------------------------------- <camelContext id="camel" xmlns="http://camel.apache.org/schema/spring"> - <route> - <from uri="file://site/inbox"/> - <unmarshal> - <tidyMarkup/> - </unmarshal> - <to uri="file://site/blogs"/> - </route> -</camelContext> + <dataFormats> + <any23 id="any23" baseURI ="http://mock.foo/bar" outputFormat="TURTLE" > + <configurations> + <entry> + <key>any23.extraction.metadata.nesting</key> + <value>off</value> + </entry> + </configurations> + <extractors>html-head-title</extractors> + </any23> + </dataFormats> + <route> + <from uri="direct:start"/> + <to uri="http://microformats.org/2009/08"/> + <unmarshal> + <custom ref="any23"/> + </unmarshal> + <to uri="mock:result"/> + </route> + </camelContext> ----------------------------------------------------------------------- ### Dependencies -To use TidyMarkup in your camel routes you need to add the a dependency -on *camel-tagsoup* which implements this data format. +To use Any23 in your camel routes you need to add the a dependency +on *camel-any23* which implements this data format. If you use maven you could just add the following to your pom.xml, substituting the version number for the latest & greatest release (see @@ -101,7 +112,7 @@ the download page for the latest versions). ---------------------------------------- <dependency> <groupId>org.apache.camel</groupId> - <artifactId>camel-tagsoup</artifactId> + <artifactId>camel-any23</artifactId> <version>x.x.x</version> </dependency> ----------------------------------------- \ No newline at end of file +---------------------------------------- diff --git a/core/camel-core/src/main/java/org/apache/camel/model/dataformat/Any23DataFormat.java b/core/camel-core/src/main/java/org/apache/camel/model/dataformat/Any23DataFormat.java index 0560836..1a52aee 100644 --- a/core/camel-core/src/main/java/org/apache/camel/model/dataformat/Any23DataFormat.java +++ b/core/camel-core/src/main/java/org/apache/camel/model/dataformat/Any23DataFormat.java @@ -75,6 +75,10 @@ public class Any23DataFormat extends DataFormatDefinition { return outputFormat; } + /** + * What RDF syntax to unmarshal as, can be: NTRIPLES, TURTLE, NQUADS, RDFXML, + * JSONLD, RDFJSON, RDF4JMODEL. It is by default: RDF4JMODEL. + */ public void setOutputFormat(Any23Type outputFormat) { this.outputFormat = outputFormat; } @@ -83,6 +87,12 @@ public class Any23DataFormat extends DataFormatDefinition { return configurations; } + /** + * Configurations for Apache Any23 as key-value pairs in order to customize + * the extraction process. The list of supported parameters can be found + * <a href="https://github.com/apache/any23/blob/master/api/src/main/resources/default-configuration.properties">here</a>. + * If not provided, a default configuration is used. + */ public void setConfigurations(Map<String, String> configurations) { this.configurations = configurations; } @@ -91,6 +101,12 @@ public class Any23DataFormat extends DataFormatDefinition { return extractors; } + /** + * List of Any23 extractors to be used in the unmarshal operation. A list of + * the available extractors can be found here + * <a href="https://any23.apache.org/getting-started.html">here</a>. If not + * provided, all the available extractors are used. + */ public void setExtractors(List<String> extractors) { this.extractors = extractors; } @@ -99,9 +115,12 @@ public class Any23DataFormat extends DataFormatDefinition { return baseURI; } + /** + * The URI to use as base for building RDF entities if only relative paths are + * provided. + */ public void setBaseURI(String baseURI) { this.baseURI = baseURI; } - } diff --git a/docs/components/modules/ROOT/pages/any23-dataformat.adoc b/docs/components/modules/ROOT/pages/any23-dataformat.adoc index 7e51ad2..3f6450c 100644 --- a/docs/components/modules/ROOT/pages/any23-dataformat.adoc +++ b/docs/components/modules/ROOT/pages/any23-dataformat.adoc @@ -5,7 +5,6 @@ Camel Any23 is a DataFormat that uses the Apache Anything To Triples (Any23) lib The main functionality of this DataFormat focuses on its Unmarshal method which extracts RDF triplets from compatible pages, in a wide variety of RDF syntaxes. - *Available as of Camel version 3.0* Any23 is a Data Format that is intended to convert HTML from a site (or file) into rdf. @@ -20,10 +19,10 @@ The Any23 dataformat supports 5 options, which are listed below. [width="100%",cols="2s,1m,1m,6",options="header"] |=== | Name | Default | Java Type | Description -| outputFormat | RDF4JMODEL | Any23Type | -| configurations | | Map | -| extractors | | List | -| baseURI | | String | +| outputFormat | RDF4JMODEL | Any23Type | What RDF syntax to unmarshal as, can be: NTRIPLES, TURTLE, NQUADS, RDFXML, JSONLD, RDFJSON, RDF4JMODEL. It is by default: RDF4JMODEL. +| configurations | | Map | Configurations for Apache Any23 as key-value pairs in order to customize the extraction process. The list of supported parameters can be found here. If not provided, a default configuration is used. +| extractors | | List | List of Any23 extractors to be used in the unmarshal operation. A list of the available extractors can be found here here. If not provided, all the available extractors are used. +| baseURI | | String | The URI to use as base for building RDF entities if only relative paths are provided. | contentTypeHeader | false | Boolean | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. |=== // dataformat options: END @@ -50,11 +49,11 @@ The component supports 5 options, which are listed below. [width="100%",cols="2,5,^1,2",options="header"] |=== | Name | Description | Default | Type -| *camel.dataformat.any23.base-u-r-i* | | | String -| *camel.dataformat.any23.configurations* | | | String +| *camel.dataformat.any23.base-u-r-i* | The URI to use as base for building RDF entities if only relative paths are provided. | | String +| *camel.dataformat.any23.configurations* | Configurations for Apache Any23 as key-value pairs in order to customize the extraction process. The list of supported parameters can be found here. If not provided, a default configuration is used. The option is a java.util.Map<java.lang.String,java.lang.String> type. | | String | *camel.dataformat.any23.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean | *camel.dataformat.any23.enabled* | Whether to enable auto configuration of the any23 data format. This is enabled by default. | | Boolean -| *camel.dataformat.any23.extractors* | | | List +| *camel.dataformat.any23.extractors* | List of Any23 extractors to be used in the unmarshal operation. A list of the available extractors can be found here here. If not provided, all the available extractors are used. | | List |=== // spring-boot-auto-configure options: END @@ -78,20 +77,32 @@ to unmarshal using Spring [source,java] ----------------------------------------------------------------------- <camelContext id="camel" xmlns="http://camel.apache.org/schema/spring"> - <route> - <from uri="file://site/inbox"/> - <unmarshal> - <tidyMarkup/> - </unmarshal> - <to uri="file://site/blogs"/> - </route> -</camelContext> + <dataFormats> + <any23 id="any23" baseURI ="http://mock.foo/bar" outputFormat="TURTLE" > + <configurations> + <entry> + <key>any23.extraction.metadata.nesting</key> + <value>off</value> + </entry> + </configurations> + <extractors>html-head-title</extractors> + </any23> + </dataFormats> + <route> + <from uri="direct:start"/> + <to uri="http://microformats.org/2009/08"/> + <unmarshal> + <custom ref="any23"/> + </unmarshal> + <to uri="mock:result"/> + </route> + </camelContext> ----------------------------------------------------------------------- ### Dependencies -To use TidyMarkup in your camel routes you need to add the a dependency -on *camel-tagsoup* which implements this data format. +To use Any23 in your camel routes you need to add the a dependency +on *camel-any23* which implements this data format. If you use maven you could just add the following to your pom.xml, substituting the version number for the latest & greatest release (see @@ -101,7 +112,7 @@ the download page for the latest versions). ---------------------------------------- <dependency> <groupId>org.apache.camel</groupId> - <artifactId>camel-tagsoup</artifactId> + <artifactId>camel-any23</artifactId> <version>x.x.x</version> </dependency> ----------------------------------------- \ No newline at end of file +---------------------------------------- diff --git a/platforms/spring-boot/components-starter/camel-any23-starter/src/main/java/org/apache/camel/dataformat/any23/springboot/Any23DataFormatConfiguration.java b/platforms/spring-boot/components-starter/camel-any23-starter/src/main/java/org/apache/camel/dataformat/any23/springboot/Any23DataFormatConfiguration.java index 058c337..9086602 100644 --- a/platforms/spring-boot/components-starter/camel-any23-starter/src/main/java/org/apache/camel/dataformat/any23/springboot/Any23DataFormatConfiguration.java +++ b/platforms/spring-boot/components-starter/camel-any23-starter/src/main/java/org/apache/camel/dataformat/any23/springboot/Any23DataFormatConfiguration.java @@ -37,8 +37,23 @@ public class Any23DataFormatConfiguration * enabled by default. */ private Boolean enabled; + /** + * Configurations for Apache Any23 as key-value pairs in order to customize + * the extraction process. The list of supported parameters can be found + * here. If not provided, a default configuration is used. The option is a + * java.util.Map<java.lang.String,java.lang.String> type. + */ private String configurations; + /** + * List of Any23 extractors to be used in the unmarshal operation. A list of + * the available extractors can be found here here. If not provided, all the + * available extractors are used. + */ private List<String> extractors; + /** + * The URI to use as base for building RDF entities if only relative paths + * are provided. + */ private String baseURI; /** * Whether the data format should set the Content-Type header with the type