Package org.apache.nifi.web.client.api
Class StandardMultipartFormDataStreamBuilder
java.lang.Object
org.apache.nifi.web.client.api.StandardMultipartFormDataStreamBuilder
- All Implemented Interfaces:
MultipartFormDataStreamBuilder
public class StandardMultipartFormDataStreamBuilder
extends Object
implements MultipartFormDataStreamBuilder
Standard implementation of Multipart Form Data Stream Builder supporting form-data as described in RFC 7578
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final record
private static final record
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Pattern
private final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final Charset
private static final String
private final List
<StandardMultipartFormDataStreamBuilder.Part> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddPart
(String name, HttpContentType httpContentType, byte[] bytes) Add Part with field name and byte array sourceaddPart
(String name, HttpContentType httpContentType, InputStream inputStream) Add Part with field name and stream sourcebuild()
Build Sequence Input Stream from collection of Form Data Parts formatted with boundariesprivate String
getFooter
(Iterator<StandardMultipartFormDataStreamBuilder.Part> selectedParts) Get Content-Type Header value containing multipart/form-data with boundaryprivate String
private InputStream
-
Field Details
-
CONTENT_DISPOSITION_HEADER
- See Also:
-
CONTENT_TYPE_HEADER
- See Also:
-
ALLOWED_NAME_PATTERN
-
CARRIAGE_RETURN_LINE_FEED
- See Also:
-
BOUNDARY_SEPARATOR
- See Also:
-
BOUNDARY_FORMAT
- See Also:
-
MULTIPART_FORM_DATA_FORMAT
- See Also:
-
HEADERS_CHARACTER_SET
-
boundary
-
parts
-
-
Constructor Details
-
StandardMultipartFormDataStreamBuilder
public StandardMultipartFormDataStreamBuilder()
-
-
Method Details
-
build
Build Sequence Input Stream from collection of Form Data Parts formatted with boundaries- Specified by:
build
in interfaceMultipartFormDataStreamBuilder
- Returns:
- Input Stream
-
getHttpContentType
Get Content-Type Header value containing multipart/form-data with boundary- Specified by:
getHttpContentType
in interfaceMultipartFormDataStreamBuilder
- Returns:
- Multipart HTTP Content-Type
-
addPart
public MultipartFormDataStreamBuilder addPart(String name, HttpContentType httpContentType, InputStream inputStream) Add Part with field name and stream source- Specified by:
addPart
in interfaceMultipartFormDataStreamBuilder
- Parameters:
name
- Name field of part to be addedhttpContentType
- Content-Type of part to be addedinputStream
- Stream content of part to be added- Returns:
- Builder
-
addPart
public MultipartFormDataStreamBuilder addPart(String name, HttpContentType httpContentType, byte[] bytes) Add Part with field name and byte array source- Specified by:
addPart
in interfaceMultipartFormDataStreamBuilder
- Parameters:
name
- Name field of part to be addedhttpContentType
- Content-Type of part to be addedbytes
- Byte array content of part to be added- Returns:
- Builder
-
getPartInputStream
private InputStream getPartInputStream(StandardMultipartFormDataStreamBuilder.Part part, String footer) -
getPartHeaders
-