This is an automated email from the ASF dual-hosted git repository. mcasters pushed a commit to branch asf-site in repository https://gitbox.apache.org/repos/asf/incubator-hop-docs.git
commit f6dcac4fb43df9a33167ff4188dae29a1d497fbf Author: Matt Casters <[email protected]> AuthorDate: Thu Nov 12 21:23:21 2020 +0100 More details clarifying metadata properties --- .../modules/ROOT/pages/metadata-plugins.adoc | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/hop-dev-manual/modules/ROOT/pages/metadata-plugins.adoc b/hop-dev-manual/modules/ROOT/pages/metadata-plugins.adoc index 4964717..5f146f8 100644 --- a/hop-dev-manual/modules/ROOT/pages/metadata-plugins.adoc +++ b/hop-dev-manual/modules/ROOT/pages/metadata-plugins.adoc @@ -18,6 +18,29 @@ The class with this annotation will be found either because it lives in the ```p Example: https://github.com/apache/incubator-hop/blob/f8f2ad2d0bc0cfd143ae90cc32e73b6c9e1cda78/engine/src/main/java/org/apache/hop/partition/PartitionSchema.java#L47[PartitionSchema.java] +== Metadata Properties + +All properties you want to have as part of the shared Hop Metadata should get the ```*@HopMetadataProperty*``` annotation. +All top level classes flagged with @HopMetadata should have a ```name``` property of type ```String```. + +Here are the *@HopMetadataProperty* attributes: + +* key : optional key if you want it to be different from the name of the field +* password: set this to true if you want the String field to be encoded using the TwoWayPasswordEncoder of the IHopMetadataProvider interface. +* storeWithName: if you want to store a reference to another shared metadata object, you can set this to true, otherwise all the properties of the object will be stored. + +Here are the supported data types: + +* enum : any enum is serialized using its name +* String : also see the password attribute above. +* Integer / int +* Long / long +* Boolean / boolean +* java.util.Date +* java.util.Map<String,String> +* java.util.List<T> : with T any of the data types listed here. +* POJO : Any class with more @HopMetadataProperty annotations in it. + == The dialog to edit the metadata
