ReturnACarViewPopulator.java
package org.andromda.samples.carrental.contracts.web.returnCar;
import java.util.Map;
/**
* Provides the ability to populate any view in the ReturnACar
*/
public final class ReturnACarViewPopulator
{
/**
* Map fields from SelectContractReturnFormImpl form
* to SelectContractReturnFormImpl form
*
* @param fromForm origin form
* @param toForm destiny form
*/
public static void populateForm(SelectContractReturnFormImpl fromForm, SelectContractReturnFormImpl toForm)
{
if(fromForm.isIdSet())
{
toForm.setId(fromForm.getId());
}
if(fromForm.isAccidentHappendSet())
{
toForm.setAccidentHappend(fromForm.isAccidentHappend());
}
}
/**
* Map fields from ReturnACarFormImpl form
* to SelectContractReturnFormImpl form
*
* @param fromForm origin form
* @param toForm destiny form
*/
public static void populateForm(ReturnACarFormImpl fromForm, SelectContractReturnFormImpl toForm)
{
if(fromForm.isIdSet())
{
toForm.setId(fromForm.getId());
}
if(fromForm.isAccidentHappendSet())
{
toForm.setAccidentHappend(fromForm.isAccidentHappend());
}
}
/**
* Populate page variables for view Select Contract
*
* @param fromForm origin form
* @param pageVariables the page variables
*/
public static void populateSelectContractPageVariables(Object fromForm, Map<String,Object> pageVariables)
{
if(fromForm instanceof ReturnACarFormImpl)
{
final ReturnACarFormImpl sourceForm=(ReturnACarFormImpl)fromForm;
if(sourceForm.isContractSet())
{
pageVariables.put("contract",sourceForm.getContract());
}
}
}
/**
* Populates the view using the appropriate view populator.
*
* @param fromForm the origin form
* @param toForm the destiny form
*/
public static void populateForm(Object fromForm, SelectContractReturnFormImpl toForm)
{
if(fromForm instanceof SelectContractReturnFormImpl)
{
populateForm((SelectContractReturnFormImpl)fromForm,toForm);
}
else if(fromForm instanceof ReturnACarFormImpl)
{
populateForm((ReturnACarFormImpl)fromForm,toForm);
}
}
}