package org.ovirt.engine.ui.uicommonweb.models.vms; import org.ovirt.engine.core.common.action.VdcReturnValueBase; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.ui.uicompat.FrontendActionAsyncResult; import org.ovirt.engine.ui.uicompat.IFrontendActionAsyncCallback; public class UnitVmModelNetworkAsyncCallback implements IFrontendActionAsyncCallback { private final UnitVmModel unitVmModel; private final BaseInterfaceCreatingManager networkCreatingManager; private final Guid idToUpdate; public UnitVmModelNetworkAsyncCallback(final UnitVmModel unitVmModel, final BaseInterfaceCreatingManager networkCreatingManager) { this(unitVmModel, networkCreatingManager, null); } public UnitVmModelNetworkAsyncCallback(final UnitVmModel unitVmModel, final BaseInterfaceCreatingManager networkCreatingManager, final Guid idToUpdate) { this.unitVmModel = unitVmModel; this.networkCreatingManager = networkCreatingManager; this.idToUpdate = idToUpdate; } @Override public void executed(FrontendActionAsyncResult result) { VdcReturnValueBase returnValue = result.getReturnValue(); if (returnValue != null && returnValue.getSucceeded()) { networkCreatingManager.updateVnics((idToUpdate == null) ? (Guid) returnValue.getActionReturnValue() : idToUpdate, unitVmModel.getNicsWithLogicalNetworks().getItems(), unitVmModel); } else { networkCreatingManager.getCallback().queryFailed(); } } }