Class PluginDefaultGroovyMethods


  • public class PluginDefaultGroovyMethods
    extends Object
    Defines new Groovy methods which appear on normal JDK 8 classes inside the Groovy environment.
    Since:
    2.5.0
    • Method Detail

      • asBoolean

        public static boolean asBoolean​(Optional<?> optional)
        Coerce an Optional instance to a boolean value.
        Parameters:
        optional - the Optional
        Returns:
        true if a value is present, otherwise false
      • collect

        public static <S,​T> Optional<T> collect​(Optional<S> self,
                                                      Closure<T> transform)
        If the optional contains a value, returns an optional containing the transformed value obtained using the transform closure or otherwise an empty optional.
         assert Optional.of("foobar").collect{ it.size() }.get() == 6
         assert !Optional.empty().collect{ it.size() }.isPresent()
         
        Parameters:
        self - an Optional
        transform - the closure used to transform the optional value if present
        Returns:
        an Optional containing the transformed value or empty if the optional is empty or the transform returns null
      • collect

        public static <S,​T> Future<T> collect​(Future<S> self,
                                                    Closure<T> transform)
        Returns a Future asynchronously returning a transformed result.
         import java.util.concurrent.*
         def executor = Executors.newSingleThreadExecutor()
         Future foobar = executor.submit{ "foobar" }
         Future foobarSize = foobar.collect{ it.size() }
         assert foobarSize.get() == 6
         executor.shutdown()
         
        Parameters:
        self - a Future
        transform - the closure used to transform the Future value
        Returns:
        a Future allowing the transformed value to be obtained asynchronously
      • toList

        public static <T> List<T> toList​(Stream<T> stream)
        Accumulates the elements of stream into a new List.
        Type Parameters:
        T - the type of element
        Parameters:
        stream - the Stream
        Returns:
        a new java.util.List instance
      • toSet

        public static <T> Set<T> toSet​(Stream<T> stream)
        Accumulates the elements of stream into a new Set.
        Type Parameters:
        T - the type of element
        Parameters:
        stream - the Stream
        Returns:
        a new java.util.Set instance
      • toList

        public static <T> List<T> toList​(BaseStream<T,​? extends BaseStream> stream)
        Accumulates the elements of stream into a new List.
        Type Parameters:
        T - the type of element
        Parameters:
        stream - the java.util.stream.BaseStream
        Returns:
        a new java.util.List instance
      • toSet

        public static <T> Set<T> toSet​(BaseStream<T,​? extends BaseStream> stream)
        Accumulates the elements of stream into a new Set.
        Type Parameters:
        T - the type of element
        Parameters:
        stream - the java.util.stream.BaseStream
        Returns:
        a new java.util.Set instance
      • stream

        public static <T> Stream<T> stream​(T[] self)
        Returns a sequential Stream with the specified array as its source.
        Type Parameters:
        T - The type of the array elements
        Parameters:
        self - The array, assumed to be unmodified during use
        Returns:
        a Stream for the array
      • stream

        public static Stream<Integer> stream​(int[] self)
        Returns a sequential Stream with the specified array as its source.
        Parameters:
        self - The array, assumed to be unmodified during use
        Returns:
        a Stream for the array
      • stream

        public static Stream<Long> stream​(long[] self)
        Returns a sequential Stream with the specified array as its source.
        Parameters:
        self - The array, assumed to be unmodified during use
        Returns:
        a Stream for the array
      • stream

        public static Stream<Double> stream​(double[] self)
        Returns a sequential Stream with the specified array as its source.
        Parameters:
        self - The array, assumed to be unmodified during use
        Returns:
        a Stream for the array
      • stream

        public static Stream<Character> stream​(char[] self)
        Returns a sequential Stream with the specified array as its source.
        Parameters:
        self - The array, assumed to be unmodified during use
        Returns:
        a Stream for the array
      • stream

        public static Stream<Byte> stream​(byte[] self)
        Returns a sequential Stream with the specified array as its source.
        Parameters:
        self - The array, assumed to be unmodified during use
        Returns:
        a Stream for the array
      • stream

        public static Stream<Short> stream​(short[] self)
        Returns a sequential Stream with the specified array as its source.
        Parameters:
        self - The array, assumed to be unmodified during use
        Returns:
        a Stream for the array
      • stream

        public static Stream<Boolean> stream​(boolean[] self)
        Returns a sequential Stream with the specified array as its source.
        Parameters:
        self - The array, assumed to be unmodified during use
        Returns:
        a Stream for the array
      • stream

        public static Stream<Float> stream​(float[] self)
        Returns a sequential Stream with the specified array as its source.
        Parameters:
        self - The array, assumed to be unmodified during use
        Returns:
        a Stream for the array