protected internal virtual Stream getInputStream(FileItemStream stream) { try { return(stream.openStream()); } catch (IOException e) { throw new RestException(Status.INTERNAL_SERVER_ERROR, e); } }
public FormPart(FileItemStream stream) { fieldName = stream.FieldName; contentType = stream.ContentType; binaryContent = readBinaryContent(stream); fileName = stream.Name; if (string.ReferenceEquals(contentType, null) || contentType.Contains(MediaType.TEXT_PLAIN)) { textContent = StringHelper.NewString(binaryContent); } }
protected internal virtual void parseRequest(MultipartFormData multipartFormData, FileUpload fileUpload, RestMultipartRequestContext requestContext) { try { FileItemIterator itemIterator = fileUpload.getItemIterator(requestContext); while (itemIterator.hasNext()) { FileItemStream stream = itemIterator.next(); multipartFormData.addPart(new FormPart(stream)); } } catch (Exception e) { throw new RestException(Status.BAD_REQUEST, e, "multipart/form-data cannot be processed"); } }
protected internal virtual sbyte[] readBinaryContent(FileItemStream stream) { Stream inputStream = getInputStream(stream); return(IoUtil.readInputStream(inputStream, stream.FieldName)); }