RegisterCarViewPopulator.java
package org.andromda.samples.carrental.inventory.web.registerCar;
import java.util.Map;
/**
* Provides the ability to populate any view in the Register Car
*/
public final class RegisterCarViewPopulator
{
/**
* Map fields from RegisterNewCarCreateFormImpl form
* to RegisterNewCarCreateFormImpl form
*
* @param fromForm origin form
* @param toForm destiny form
*/
public static void populateForm(RegisterNewCarCreateFormImpl fromForm, RegisterNewCarCreateFormImpl toForm)
{
if(fromForm.isInventoryNoSet())
{
toForm.setInventoryNo(fromForm.getInventoryNo());
}
if(fromForm.isRegistrationNoSet())
{
toForm.setRegistrationNo(fromForm.getRegistrationNo());
}
if(fromForm.isCarTypeIdSet())
{
toForm.setCarTypeId(fromForm.getCarTypeId());
}
if(fromForm.getCarTypeIdBackingList() != null)
{
toForm.setCarTypeIdBackingList(fromForm.getCarTypeIdBackingList());
}
}
/**
* Map fields from RegisterCarFormImpl form
* to RegisterNewCarCreateFormImpl form
*
* @param fromForm origin form
* @param toForm destiny form
*/
public static void populateForm(RegisterCarFormImpl fromForm, RegisterNewCarCreateFormImpl toForm)
{
if(fromForm.isInventoryNoSet())
{
toForm.setInventoryNo(fromForm.getInventoryNo());
}
if(fromForm.isRegistrationNoSet())
{
toForm.setRegistrationNo(fromForm.getRegistrationNo());
}
if(fromForm.isCarTypeIdSet())
{
toForm.setCarTypeId(fromForm.getCarTypeId());
}
if(fromForm.getCarTypeIdBackingList() != null)
{
toForm.setCarTypeIdBackingList(fromForm.getCarTypeIdBackingList());
}
}
/**
* Populate page variables for view Register new Car
*
* @param fromForm origin form
* @param pageVariables the page variables
*/
public static void populateRegisterNewCarPageVariables(Object fromForm, Map<String,Object> pageVariables)
{
if(fromForm instanceof RegisterCarFormImpl)
{
final RegisterCarFormImpl sourceForm=(RegisterCarFormImpl)fromForm;
if(sourceForm.isExistingcarsSet())
{
pageVariables.put("existingcars",sourceForm.getExistingcars());
}
}
}
/**
* Populates the view using the appropriate view populator.
*
* @param fromForm the origin form
* @param toForm the destiny form
*/
public static void populateForm(Object fromForm, RegisterNewCarCreateFormImpl toForm)
{
if(fromForm instanceof RegisterNewCarCreateFormImpl)
{
populateForm((RegisterNewCarCreateFormImpl)fromForm,toForm);
}
else if(fromForm instanceof RegisterCarFormImpl)
{
populateForm((RegisterCarFormImpl)fromForm,toForm);
}
}
}