Passing Parameters into ETL from Ant [message #526545] |
Mon, 12 April 2010 08:51 |
Eclipse User |
|
|
|
Originally posted by: c.k.holmes.lboro.ac.uk
Hi,
I can pass model references from Ant into ETL via:
<epsilon.etl src="${EtlFile}">
<model ref="${SourceName}" as="Source"/>
<model ref="${TargetName}" as="Target"/>
</epsilon.etl>
What's the syntax required to allow me to pass in variables (constants
as far as ETL is concerned) from Ant?
e.g. I could enable/disable logging from ETL via a Boolean declared in Ant:
in Ant:
<property name="LoggingEnabled" value="true"/>
<epsilon.etl src="${EtlFile}">
<model ref="${SourceName}" as="Source"/>
<model ref="${TargetName}" as="Target"/>
<!-- pass in property LoggingEnabled -->
</epsilon.etl>
in ETL:
rule Blah
transform sourceThing : Source!Thing
to targetThing : Target!Thing {
if (LoggingEnabled) {
'rule: Blah invoked'.println();
}
}
How do I declare 'LoggingEnabled' in Ant? How do I pass 'LoggingEnabled'
into to ETL? And how do I access 'LoggingEnabled' from within ETL?
Regards
Chris
|
|
|
|
Re: Passing Parameters into ETL from Ant [message #527190 is a reply to message #526640] |
Wed, 14 April 2010 12:03 |
Eclipse User |
|
|
|
Originally posted by: c.k.holmes.lboro.ac.uk
Hi Dimitris,
Many thanks, I implemented it like this:
<epsilon.ecl src="${EclFile}" exportmatchtrace="matchTrace">
<!--
Enable or disable transformation logging messages
-->
<parameter name="LoggingEnabled" value="true"/>
<!--
Provide referenced model components to ECL transformation
-->
<model ref="${LeftModel}" as="Left"/>
<model ref="${RightModel}" as="Right"/>
</epsilon.ecl>
Thanks for your help.
Best Wishes
Chris
Dimitris Kolovos wrote:
> Hi Chris,
>
> You can use <parameter/> nested elements to pass parameters to Epsilon
> programs via ANT tasks (all parameters are strings so you'll have to
> transform them to booleans, integers etc. using the respective
> asBoolean(), asInteger() methods):
>
> <epsilon.eol>
> LoggingEnabled.asBoolean().println();
> <parameter name="LoggingEnabled" value="true"/>
> </epsilon.eol>
>
> Cheers,
> Dimitris
>
> On 12/04/2010 11:51, Chris Holmes wrote:
>> Hi,
>> I can pass model references from Ant into ETL via:
>> <epsilon.etl src="${EtlFile}">
>> <model ref="${SourceName}" as="Source"/>
>> <model ref="${TargetName}" as="Target"/>
>> </epsilon.etl>
>>
>> What's the syntax required to allow me to pass in variables (constants
>> as far as ETL is concerned) from Ant?
>>
>> e.g. I could enable/disable logging from ETL via a Boolean declared in
>> Ant:
>>
>> in Ant:
>> <property name="LoggingEnabled" value="true"/>
>> <epsilon.etl src="${EtlFile}">
>> <model ref="${SourceName}" as="Source"/>
>> <model ref="${TargetName}" as="Target"/>
>> <!-- pass in property LoggingEnabled -->
>> </epsilon.etl>
>>
>>
>> in ETL:
>> rule Blah
>> transform sourceThing : Source!Thing
>> to targetThing : Target!Thing {
>> if (LoggingEnabled) {
>> 'rule: Blah invoked'.println();
>> }
>> }
>>
>> How do I declare 'LoggingEnabled' in Ant? How do I pass 'LoggingEnabled'
>> into to ETL? And how do I access 'LoggingEnabled' from within ETL?
>>
>> Regards
>> Chris
>
|
|
|
|
Re: Passing Parameters into ETL from Ant [message #588305 is a reply to message #526640] |
Wed, 14 April 2010 12:03 |
Eclipse User |
|
|
|
Originally posted by: c.k.holmes.lboro.ac.uk
Hi Dimitris,
Many thanks, I implemented it like this:
<epsilon.ecl src="${EclFile}" exportmatchtrace="matchTrace">
<!--
Enable or disable transformation logging messages
-->
<parameter name="LoggingEnabled" value="true"/>
<!--
Provide referenced model components to ECL transformation
-->
<model ref="${LeftModel}" as="Left"/>
<model ref="${RightModel}" as="Right"/>
</epsilon.ecl>
Thanks for your help.
Best Wishes
Chris
Dimitris Kolovos wrote:
> Hi Chris,
>
> You can use <parameter/> nested elements to pass parameters to Epsilon
> programs via ANT tasks (all parameters are strings so you'll have to
> transform them to booleans, integers etc. using the respective
> asBoolean(), asInteger() methods):
>
> <epsilon.eol>
> LoggingEnabled.asBoolean().println();
> <parameter name="LoggingEnabled" value="true"/>
> </epsilon.eol>
>
> Cheers,
> Dimitris
>
> On 12/04/2010 11:51, Chris Holmes wrote:
>> Hi,
>> I can pass model references from Ant into ETL via:
>> <epsilon.etl src="${EtlFile}">
>> <model ref="${SourceName}" as="Source"/>
>> <model ref="${TargetName}" as="Target"/>
>> </epsilon.etl>
>>
>> What's the syntax required to allow me to pass in variables (constants
>> as far as ETL is concerned) from Ant?
>>
>> e.g. I could enable/disable logging from ETL via a Boolean declared in
>> Ant:
>>
>> in Ant:
>> <property name="LoggingEnabled" value="true"/>
>> <epsilon.etl src="${EtlFile}">
>> <model ref="${SourceName}" as="Source"/>
>> <model ref="${TargetName}" as="Target"/>
>> <!-- pass in property LoggingEnabled -->
>> </epsilon.etl>
>>
>>
>> in ETL:
>> rule Blah
>> transform sourceThing : Source!Thing
>> to targetThing : Target!Thing {
>> if (LoggingEnabled) {
>> 'rule: Blah invoked'.println();
>> }
>> }
>>
>> How do I declare 'LoggingEnabled' in Ant? How do I pass 'LoggingEnabled'
>> into to ETL? And how do I access 'LoggingEnabled' from within ETL?
>>
>> Regards
>> Chris
>
|
|
|
Powered by
FUDForum. Page generated in 0.03521 seconds