package org.ovirt.engine.core.vdsbroker.vdsbroker;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import org.ovirt.engine.core.vdsbroker.irsbroker.StatusReturn;
public final class IQNListReturn extends StatusReturn {
private static final String TARGETS = "targets";
private static final String FULL_TARGETS = "fullTargets";
// We are ignoring missing fields after the status, because on failure it is
// not sent.
// [MissingMapping(MappingAction.Ignore), Member("targets")]
private List<String> iqnList = Collections.emptyList();
private boolean fullTargets;
public IQNListReturn(Map<String, Object> innerMap) {
super(innerMap);
if (innerMap.containsKey(FULL_TARGETS)) {
fullTargets = true;
iqnList = toList((Object[]) innerMap.get(FULL_TARGETS));
} else {
if (innerMap.containsKey(TARGETS)) {
iqnList = toList((Object[]) innerMap.get(TARGETS));
}
}
}
private List<String> toList(Object[] objects) {
List<String> iqns = new ArrayList<>(objects.length);
for (Object o : objects) {
iqns.add((String) o);
}
return iqns;
}
public List<String> getIqnList() {
return iqnList;
}
public boolean isFullTargets() {
return fullTargets;
}
}