Interface IOConsumer<T>

  • Type Parameters:
    T - the type of the input to the operations.
    Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    @FunctionalInterface
    public interface IOConsumer<T>
    Like Consumer but throws IOException.
    Since:
    2.7
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      void accept​(T t)
      Performs this operation on the given argument.
      default IOConsumer<T> andThen​(IOConsumer<? super T> after)
      Returns a composed IOConsumer that performs, in sequence, this operation followed by the after operation.
      default java.util.function.Consumer<T> asConsumer()
      Creates a Consumer for this instance that throws UncheckedIOException instead of IOException.
      static <T> void forAll​(IOConsumer<T> action, java.lang.Iterable<T> iterable)
      Performs an action for each element of the collection gathering any exceptions.
      static <T> void forAll​(IOConsumer<T> action, java.util.stream.Stream<T> stream)
      Performs an action for each element of the collection gathering any exceptions.
      static <T> void forAll​(IOConsumer<T> action, T... array)
      Performs an action for each element of the array gathering any exceptions.
      static <T> void forEach​(java.lang.Iterable<T> iterable, IOConsumer<T> action)
      Performs an action for each element of the collection, stopping at the first exception.
      static <T> void forEach​(java.util.stream.Stream<T> stream, IOConsumer<T> action)
      Performs an action for each element of the stream, stopping at the first exception.
      static <T> void forEach​(T[] array, IOConsumer<T> action)
      Performs an action for each element of this array, stopping at the first exception.
      static <T> IOConsumer<T> noop()
      Returns the constant no-op consumer.
    • Field Detail

      • NOOP_IO_CONSUMER

        static final IOConsumer<?> NOOP_IO_CONSUMER
        Consider private.
    • Method Detail

      • forAll

        static <T> void forAll​(IOConsumer<T> action,
                               java.lang.Iterable<T> iterable)
                        throws IOExceptionList
        Performs an action for each element of the collection gathering any exceptions.
        Type Parameters:
        T - The element type.
        Parameters:
        action - The action to apply to each input element.
        iterable - The input to stream.
        Throws:
        IOExceptionList - if any I/O errors occur.
        Since:
        2.12.0
      • forAll

        static <T> void forAll​(IOConsumer<T> action,
                               java.util.stream.Stream<T> stream)
                        throws IOExceptionList
        Performs an action for each element of the collection gathering any exceptions.
        Type Parameters:
        T - The element type.
        Parameters:
        action - The action to apply to each input element.
        stream - The input to stream.
        Throws:
        IOExceptionList - if any I/O errors occur.
        Since:
        2.12.0
      • forAll

        @SafeVarargs
        static <T> void forAll​(IOConsumer<T> action,
                               T... array)
                        throws IOExceptionList
        Performs an action for each element of the array gathering any exceptions.
        Type Parameters:
        T - The element type.
        Parameters:
        action - The action to apply to each input element.
        array - The input to stream.
        Throws:
        IOExceptionList - if any I/O errors occur.
        Since:
        2.12.0
      • forEach

        static <T> void forEach​(java.lang.Iterable<T> iterable,
                                IOConsumer<T> action)
                         throws java.io.IOException
        Performs an action for each element of the collection, stopping at the first exception.
        Type Parameters:
        T - The element type.
        Parameters:
        iterable - The input to stream.
        action - The action to apply to each input element.
        Throws:
        java.io.IOException - if an I/O error occurs.
        Since:
        2.12.0
      • forEach

        static <T> void forEach​(java.util.stream.Stream<T> stream,
                                IOConsumer<T> action)
                         throws java.io.IOException
        Performs an action for each element of the stream, stopping at the first exception.
        Type Parameters:
        T - The element type.
        Parameters:
        stream - The input to stream.
        action - The action to apply to each input element.
        Throws:
        java.io.IOException - if an I/O error occurs.
        Since:
        2.12.0
      • forEach

        static <T> void forEach​(T[] array,
                                IOConsumer<T> action)
                         throws java.io.IOException
        Performs an action for each element of this array, stopping at the first exception.
        Type Parameters:
        T - The element type.
        Parameters:
        array - The input to stream.
        action - The action to apply to each input element.
        Throws:
        java.io.IOException - if an I/O error occurs.
        Since:
        2.12.0
      • noop

        static <T> IOConsumer<T> noop()
        Returns the constant no-op consumer.
        Type Parameters:
        T - Type consumer type.
        Returns:
        a constant no-op consumer.
        Since:
        2.9.0
      • accept

        void accept​(T t)
             throws java.io.IOException
        Performs this operation on the given argument.
        Parameters:
        t - the input argument
        Throws:
        java.io.IOException - if an I/O error occurs.
      • andThen

        default IOConsumer<T> andThen​(IOConsumer<? super T> after)
        Returns a composed IOConsumer that performs, in sequence, this operation followed by the after operation. If performing either operation throws an exception, it is relayed to the caller of the composed operation. If performing this operation throws an exception, the after operation will not be performed.
        Parameters:
        after - the operation to perform after this operation
        Returns:
        a composed Consumer that performs in sequence this operation followed by the after operation
        Throws:
        java.lang.NullPointerException - if after is null
      • asConsumer

        default java.util.function.Consumer<T> asConsumer()
        Creates a Consumer for this instance that throws UncheckedIOException instead of IOException.
        Returns:
        an UncheckedIOException Consumer.
        Since:
        2.12.0