During translator development, a translator developer can define three (3) different types of property sets that can help customize the behavior of the translator. The sections below describes each one.
Translator Override Properties
On the "ExecutionFactory" class a translator developer can define any number of "getter/setter" methods with the @TranslatorProperty annotation. These properties (also referred to a execution properties) can be used for extending the capabilities of the translator. It is important to define default values for all these properties, as these properties are being defined to change the default behavior of the translator. If needed, the values for these properties are supplied in "vdb.xml" file during the deploy time when the translator is used to represent vdb's model. A sample example is given below:
@TranslatorProperty(display="Copy LOBs",description="If true, returned LOBs will be copied, rather than streamed from the source",advanced=true)
public boolean isCopyLobs() {
return copyLobs;
}
public void setCopyLobs(boolean copyLobs) {
this.copyLobs = copyLobs;
}
at runtime these properties can be defined in vdb.xml as
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<vdb name="vdb" version="1">
<model name="PM1">
<source name="connector" translator-name="my-translator-override" />
</model>
<translator name="my-translator-override" type="my-translator">
<property name="CopyLobs" value="true" />
</translator>
</vdb>