public ImmutableList<String> readLines() throws IOException {
    Closer closer = Closer.create();
    try {
      BufferedReader reader = closer.register(openBufferedStream());
      List<String> result = Lists.newArrayList();
      String line;
      while ((line = reader.readLine()) != null) {
        result.add(line);
      }
      return ImmutableList.copyOf(result);
    } catch (Throwable e) {
      throw closer.rethrow(e);
    } finally {
      closer.close();
    }
  }
public ImmutableList<String> readLines() throws IOException {
    Closer closer = Closer.create();
    try {
      BufferedReader reader = closer.register(openBufferedStream());
      List<String> result = Lists.newArrayList();
      String line;
      while ((line = reader.readLine()) != null) {
        result.add(line);
      }
      return ImmutableList.copyOf(result);
    } catch (Throwable e) {
      throw closer.rethrow(e);
    } finally {
      closer.close();
    }
  }
public ImmutableList < String > readLines ( ) throws IOException { Closer closer = Closer . create ( ) ; try { BufferedReader reader = closer . register ( openBufferedStream ( ) ) ; List < String > result = Lists . newArrayList ( ) ; String line ; while ( ( line = reader . readLine ( ) ) != null ) { result . add ( line ) ; } return ImmutableList . copyOf ( result ) ; } catch ( Throwable e ) { throw closer . rethrow ( e ) ; } finally { closer . close ( ) ; } }
Reads all the lines of this source as a list of strings. The returned list will be empty if
this source is empty.

<p>Like {@link BufferedReader#readLine()}, this method considers a line to be a sequence of
text that is terminated by (but does not include) one of {@code \r\n}, {@code \r} or {@code
\n}. If the source's content does not end in a line termination sequence, it is treated as if
it does.

@throws IOException if an I/O error occurs while reading from this source
Reads all the lines of this source as a list of strings . The returned list will be empty if this source is empty .