package org.ovirt.engine.ui.uicommonweb.models.hosts;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import org.ovirt.engine.core.common.action.CreateOrUpdateBond;
import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
import org.ovirt.engine.ui.uicompat.ConstantsManager;
public class SetupNetworksEditBondModel extends SetupNetworksBondModel {
public SetupNetworksEditBondModel(final CreateOrUpdateBond bond, boolean doesBondHaveVmNetworkAttached) {
super(doesBondHaveVmNetworkAttached);
setTitle(ConstantsManager.getInstance()
.getMessages()
.editBondInterfaceTitle(bond.getName()));
// bond name
getBond().setIsChangeable(false);
List<String> bondName = Arrays.asList(bond.getName());
getBond().setItems(bondName);
getBond().setSelectedItem(bond.getName());
// bond options
String bondOptions = bond.getBondOptions();
List<Map.Entry<String, EntityModel<String>>> items = (List<Map.Entry<String, EntityModel<String>>>) getBondingOptions().getItems();
boolean found = false;
Map.Entry<String, EntityModel<String>> customItem = null;
for (Map.Entry<String, EntityModel<String>> pair : items) {
String key = pair.getKey();
if (key.equals(bondOptions)) {
getBondingOptions().setSelectedItem(pair);
found = true;
break;
} else if ("custom".equals(key)) { //$NON-NLS-1$
customItem = pair;
}
}
if (!found) {
EntityModel<String> value = new EntityModel<>();
value.setEntity(bondOptions);
customItem.setValue(value);
getBondingOptions().setSelectedItem(customItem);
}
}
}