package com.salesmanager.shop.populator.manufacturer;
import com.salesmanager.core.business.exception.ConversionException;
import com.salesmanager.core.business.utils.AbstractDataPopulator;
import com.salesmanager.core.model.catalog.product.manufacturer.ManufacturerDescription;
import com.salesmanager.core.model.merchant.MerchantStore;
import com.salesmanager.core.model.reference.language.Language;
import com.salesmanager.shop.model.catalog.manufacturer.ReadableManufacturer;
import java.util.Set;
public class ReadableManufacturerPopulator extends AbstractDataPopulator<com.salesmanager.core.model.catalog.product.manufacturer.Manufacturer,ReadableManufacturer>
{
@Override
public ReadableManufacturer populate(
com.salesmanager.core.model.catalog.product.manufacturer.Manufacturer source,
ReadableManufacturer target, MerchantStore store, Language language) throws ConversionException {
target.setId(source.getId());
if(source.getDescriptions()!=null && source.getDescriptions().size()>0) {
Set<ManufacturerDescription> descriptions = source.getDescriptions();
ManufacturerDescription description = null;
for(ManufacturerDescription desc : descriptions) {
if(desc.getLanguage().getCode().equals(language.getCode())) {
description = desc;
break;
}
}
target.setOrder(source.getOrder());
target.setId(source.getId());
target.setCode(source.getCode());
if (description != null) {
com.salesmanager.shop.model.catalog.manufacturer.ManufacturerDescription d = new com.salesmanager.shop.model.catalog.manufacturer.ManufacturerDescription();
d.setName(description.getName());
d.setDescription(description.getDescription());
target.setDescription(d);
}
}
return target;
}
@Override
protected ReadableManufacturer createTarget()
{
return null;
}
}