@Override
protected final Map<ServerIdentity, ServerStatus> receiveResponse(final InputStream input) throws IOException {
final Unmarshaller unmarshaller = getUnmarshaller();
unmarshaller.start(createByteInput(input));
expectHeader(unmarshaller, DomainClientProtocol.RETURN_SERVER_STATUS_COUNT);
final int count = unmarshaller.readInt();
final Map<ServerIdentity, ServerStatus> results = new HashMap<ServerIdentity, ServerStatus>(count);
for (int i = 0; i < count; i++) {
expectHeader(unmarshaller, DomainClientProtocol.RETURN_HOST_NAME);
final String hostName = unmarshaller.readUTF();
expectHeader(unmarshaller, DomainClientProtocol.RETURN_SERVER_GROUP_NAME);