package org.ovirt.engine.api.restapi.types; import org.ovirt.engine.api.restapi.utils.GuidUtils; import org.ovirt.engine.core.common.businessentities.Label; import org.ovirt.engine.core.common.businessentities.LabelBuilder; public class AffinityLabelMapper { @Mapping(from = Label.class, to = org.ovirt.engine.api.model.AffinityLabel.class) public static org.ovirt.engine.api.model.AffinityLabel map(Label model, org.ovirt.engine.api.model.AffinityLabel template) { org.ovirt.engine.api.model.AffinityLabel entity = template != null ? template : new org.ovirt.engine.api.model.AffinityLabel(); entity.setId(model.getId().toString()); entity.setName(model.getName()); entity.setReadOnly(model.isReadOnly()); return entity; } @Mapping(from = org.ovirt.engine.api.model.AffinityLabel.class, to = Label.class) public static Label map(org.ovirt.engine.api.model.AffinityLabel model, Label template) { LabelBuilder entity = template != null ? new LabelBuilder(template) : new LabelBuilder(); if (model.isSetId()) { entity.id(GuidUtils.asGuid(model.getId())); } if (model.isSetName()) { entity.name(model.getName()); } if (model.isSetReadOnly()) { entity.readOnly(model.isReadOnly()); } if (model.isSetVms() && model.getVms().isSetVms()) { model.getVms().getVms().forEach(vm -> entity.vm(GuidUtils.asGuid(vm.getId()))); } if (model.isSetHosts() && model.getHosts().isSetHosts()) { model.getHosts().getHosts().forEach(host -> entity.host(GuidUtils.asGuid(host.getId()))); } return entity.build(); } }