@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; }
@Override public ActionParametersBase getParameters(AffinityLabel model, Label entity) { LabelBuilder newEntity = new LabelBuilder(entity); if (model.isSetReadOnly()) { newEntity.readOnly(model.isReadOnly()); } if (model.isSetName()) { newEntity.name(model.getName()); } return new LabelActionParameters(newEntity.build()); } }
@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(); } }
/** * Create an instance of {@link AffinityLabel } * */ public AffinityLabel createAffinityLabel() { return new AffinityLabel(); }
private static Map<String, String> mapAffinityLabelMapping(RegistrationAffinityLabelMappings model) { return model.getRegistrationAffinityLabelMappings() .stream() .collect(Collectors.toMap( registrationMap -> registrationMap.isSetFrom() ? registrationMap.getFrom().getName() : null, registrationMap -> registrationMap.isSetTo() ? AffinityLabelMapper.map(registrationMap.getTo(), null).getName() : null)); }
@Override public Response add(AffinityLabel label) { validateParameters(label, "id"); IdQueryParameters parameters = new IdQueryParameters(GuidUtils.asGuid(label.getId())); org.ovirt.engine.core.common.businessentities.Label entity = getEntity( org.ovirt.engine.core.common.businessentities.Label.class, QueryType.GetLabelById, parameters, label.getId(), true); BusinessEntity<Guid> parent = constructor.create(); parent.setId(GuidUtils.asGuid(parentId)); org.ovirt.engine.core.common.businessentities.Label updatedLabel = new LabelBuilder(entity) .entity(parent) .build(); // Add the affinity label using the backend "update" operation. As the backend will return the added label as // the result of the operation, we can fetch it using a simple "identity" resolver, that just returns the same // value it is passed. LabelActionParameters updateParams = new LabelActionParameters(updatedLabel); return performCreate(ActionType.UpdateLabel, updateParams, (IResolver<Label, Label>) result -> result); }