}
}
else if (FormEncodingType.MULTIPART == webRequestSettings.getEncodingType()) {
final List<PartBase> partList = new ArrayList<PartBase>();
for (final NameValuePair pair : webRequestSettings.getRequestParameters()) {
final PartBase newPart;
if (pair instanceof KeyDataPair) {
final KeyDataPair pairWithFile = (KeyDataPair) pair;
final String charset = webRequestSettings.getCharset();
newPart = buildFilePart(pairWithFile, charset);
}
else {
newPart = new StringPart(pair.getName(), pair.getValue(), webRequestSettings.getCharset());
newPart.setContentType(null); // Firefox and IE seem not to send a content type
}
newPart.setTransferEncoding(null); // Firefox and IE don't send transfer encoding headers
partList.add(newPart);
}
Part[] parts = new Part[partList.size()];
parts = partList.toArray(parts);
method.setRequestEntity(new MultipartRequestEntity(parts, method.getParams()));