/*
 * Copyright 2014 Red Hat, Inc.
 *
 * Red Hat licenses this file to you under the Apache License, version 2.0
 * (the "License"); you may not use this file except in compliance with the
 * License.  You may obtain a copy of the License at:
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
 * License for the specific language governing permissions and limitations
 * under the License.
 */

package io.vertx.rxjava.ext.web.multipart;

import rx.Observable;
import rx.Single;
import io.vertx.rx.java.RxHelper;
import io.vertx.rx.java.WriteStreamSubscriber;
import io.vertx.rx.java.SingleOnSubscribeAdapter;
import java.util.Map;
import java.util.Set;
import java.util.List;
import java.util.Iterator;
import java.util.function.Function;
import java.util.stream.Collectors;
import io.vertx.core.Handler;
import io.vertx.core.AsyncResult;
import io.vertx.core.json.JsonObject;
import io.vertx.core.json.JsonArray;
import io.vertx.lang.rx.RxGen;
import io.vertx.lang.rx.TypeArg;
import io.vertx.lang.rx.MappingIterator;

A multipart form.

NOTE: This class has been automatically generated from the original non RX-ified interface using Vert.x codegen.
/** * A multipart form. * * <p/> * NOTE: This class has been automatically generated from the {@link io.vertx.ext.web.multipart.MultipartForm original} non RX-ified interface using Vert.x codegen. */
@RxGen(io.vertx.ext.web.multipart.MultipartForm.class) public class MultipartForm implements Iterable<io.vertx.rxjava.ext.web.multipart.FormDataPart> { @Override public String toString() { return delegate.toString(); } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; MultipartForm that = (MultipartForm) o; return delegate.equals(that.delegate); } @Override public int hashCode() { return delegate.hashCode(); } @Override public Iterator<io.vertx.rxjava.ext.web.multipart.FormDataPart> iterator() { Function<io.vertx.ext.web.multipart.FormDataPart, io.vertx.rxjava.ext.web.multipart.FormDataPart> conv = io.vertx.rxjava.ext.web.multipart.FormDataPart::newInstance; return new MappingIterator<>(delegate.iterator(), conv); } public static final TypeArg<MultipartForm> __TYPE_ARG = new TypeArg<>( obj -> new MultipartForm((io.vertx.ext.web.multipart.MultipartForm) obj), MultipartForm::getDelegate ); private final io.vertx.ext.web.multipart.MultipartForm delegate; public MultipartForm(io.vertx.ext.web.multipart.MultipartForm delegate) { this.delegate = delegate; } public MultipartForm(Object delegate) { this.delegate = (io.vertx.ext.web.multipart.MultipartForm)delegate; } public io.vertx.ext.web.multipart.MultipartForm getDelegate() { return delegate; }
Returns:a multipart form instance
/** * @return a multipart form instance */
public static io.vertx.rxjava.ext.web.multipart.MultipartForm create() { io.vertx.rxjava.ext.web.multipart.MultipartForm ret = io.vertx.rxjava.ext.web.multipart.MultipartForm.newInstance((io.vertx.ext.web.multipart.MultipartForm)io.vertx.ext.web.multipart.MultipartForm.create()); return ret; }
Add an attribute form data part.
Params:
  • name – the name of the attribute
  • value – the value of the attribute
Returns:a reference to this, so the API can be used fluently
/** * Add an attribute form data part. * @param name the name of the attribute * @param value the value of the attribute * @return a reference to this, so the API can be used fluently */
public io.vertx.rxjava.ext.web.multipart.MultipartForm attribute(String name, String value) { delegate.attribute(name, value); return this; }
Add a text file upload form data part.
Params:
  • name – name of the parameter
  • filename – filename of the file
  • pathname – the pathname of the file
  • mediaType – the MIME type of the file
Returns:a reference to this, so the API can be used fluently
/** * Add a text file upload form data part. * @param name name of the parameter * @param filename filename of the file * @param pathname the pathname of the file * @param mediaType the MIME type of the file * @return a reference to this, so the API can be used fluently */
public io.vertx.rxjava.ext.web.multipart.MultipartForm textFileUpload(String name, String filename, String pathname, String mediaType) { delegate.textFileUpload(name, filename, pathname, mediaType); return this; }
Add a text file upload form data part.
Params:
  • name – name of the parameter
  • filename – filename of the file
  • content – the content of the file
  • mediaType – the MIME type of the file
Returns:a reference to this, so the API can be used fluently
/** * Add a text file upload form data part. * @param name name of the parameter * @param filename filename of the file * @param content the content of the file * @param mediaType the MIME type of the file * @return a reference to this, so the API can be used fluently */
public io.vertx.rxjava.ext.web.multipart.MultipartForm textFileUpload(String name, String filename, io.vertx.rxjava.core.buffer.Buffer content, String mediaType) { delegate.textFileUpload(name, filename, content.getDelegate(), mediaType); return this; }
Add a binary file upload form data part.
Params:
  • name – name of the parameter
  • filename – filename of the file
  • pathname – the pathname of the file
  • mediaType – the MIME type of the file
Returns:a reference to this, so the API can be used fluently
/** * Add a binary file upload form data part. * @param name name of the parameter * @param filename filename of the file * @param pathname the pathname of the file * @param mediaType the MIME type of the file * @return a reference to this, so the API can be used fluently */
public io.vertx.rxjava.ext.web.multipart.MultipartForm binaryFileUpload(String name, String filename, String pathname, String mediaType) { delegate.binaryFileUpload(name, filename, pathname, mediaType); return this; }
Add a binary file upload form data part.
Params:
  • name – name of the parameter
  • filename – filename of the file
  • content – the content of the file
  • mediaType – the MIME type of the file
Returns:a reference to this, so the API can be used fluently
/** * Add a binary file upload form data part. * @param name name of the parameter * @param filename filename of the file * @param content the content of the file * @param mediaType the MIME type of the file * @return a reference to this, so the API can be used fluently */
public io.vertx.rxjava.ext.web.multipart.MultipartForm binaryFileUpload(String name, String filename, io.vertx.rxjava.core.buffer.Buffer content, String mediaType) { delegate.binaryFileUpload(name, filename, content.getDelegate(), mediaType); return this; } public static MultipartForm newInstance(io.vertx.ext.web.multipart.MultipartForm arg) { return arg != null ? new MultipartForm(arg) : null; } }