Package ratpack.form

Interface Form

  • All Superinterfaces:
    java.util.Map<java.lang.String,​java.lang.String>, ratpack.util.MultiValueMap<java.lang.String,​java.lang.String>

    public interface Form
    extends ratpack.util.MultiValueMap<java.lang.String,​java.lang.String>
    An uploaded form.

    The form is modelled as a MultiValueMap, with extra methods for dealing with file uploads. That is, uploaded files are not visible via the methods provided by MultiValueMap.

    All instances of this type are immutable. Calling any mutative method of MultiValueMap will result in an UnsupportedOperationException.

    Example usage:

    
     import ratpack.handling.Handler;
     import ratpack.handling.Context;
     import ratpack.form.Form;
     import ratpack.form.UploadedFile;
    
     import java.util.List;
    
     public class Example {
       public static class FormHandler implements Handler {
         public void handle(Context context) throws Exception {
           context.parse(Form.class).then(form -> {
             UploadedFile file = form.file("someFile.txt");
             String param = form.get("param");
             List<String> multi = form.getAll("multi");
             context.render("form uploaded!");
           });
         }
       }
     }
     

    To include the query parameters from the request in the parsed form, use form(boolean). This can be useful if you want to support both GET and PUT submission with a single handler.

    • Nested Class Summary

      • Nested classes/interfaces inherited from interface java.util.Map

        java.util.Map.Entry<K extends java.lang.Object,​V extends java.lang.Object>
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      UploadedFile file​(java.lang.String name)
      Return the first uploaded file with the given name.
      ratpack.util.MultiValueMap<java.lang.String,​UploadedFile> files()
      Returns all of the uploaded files.
      java.util.List<UploadedFile> files​(java.lang.String name)
      Return all of the uploaded files with the given name.
      static Parse<Form,​FormParseOpts> form()
      Creates a parseable object to parse a request body into a Form.
      static Parse<Form,​FormParseOpts> form​(boolean includeQueryParams)
      Creates a parseable object to parse a request body into a Form.
      • Methods inherited from interface java.util.Map

        compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, equals, forEach, getOrDefault, hashCode, isEmpty, keySet, merge, putIfAbsent, remove, replace, replace, replaceAll, size, values
      • Methods inherited from interface ratpack.util.MultiValueMap

        asMultimap, clear, get, getAll, getAll, put, putAll, remove
    • Method Detail

      • file

        @Nullable
        UploadedFile file​(java.lang.String name)
        Return the first uploaded file with the given name.
        Parameters:
        name - The name of the uploaded file in the form
        Returns:
        The uploaded file, or null if no file was uploaded by that name
      • files

        java.util.List<UploadedFile> files​(java.lang.String name)
        Return all of the uploaded files with the given name.
        Parameters:
        name - The name of the uploaded files in the form
        Returns:
        The uploaded files, or an empty list if no files were uploaded by that name
      • files

        ratpack.util.MultiValueMap<java.lang.String,​UploadedFile> files()
        Returns all of the uploaded files.
        Returns:
        all of the uploaded files.
      • form

        static Parse<Form,​FormParseOpts> form​(boolean includeQueryParams)
        Creates a parseable object to parse a request body into a Form.
        Parameters:
        includeQueryParams - whether to include the query parameters from the request in the parsed form
        Returns:
        a parse object