tree 9e69faa4a12ada9f96a48f7b7762053538095c34
parent 5c3ef12969689a5af68c058b1d6ab6da54b2979b
author Joseph Koshakow <jkosh44@users.noreply.github.com> 1508203360 -0400
committer Keith Turner <keith@deenlo.com> 1508203360 -0400

Fixes #923 added span convenience methods to scanner builder  (#940)

* Added the following default methods to the ScannerBuilder interface:
  default ScannerBuilder over(Bytes row) {...}
  default ScannerBuilder over(CharSequence row) {...}
  default ScannerBuilder over(Bytes row, Column col){...}
  default ScannerBuilder over(CharSequence row, , Column col){...}

  default ScannerBuilder overPrefix(Bytes row) {...}
  default ScannerBuilder overPrefix(CharSequence row){...}
  default ScannerBuilder overPrefix(Bytes row, Column col){...}
  default ScannerBuilder overPrefix(CharSequence row, , Column col){...}

* Changed tests in the following classes to use the new over() and overprefix() methods
  ScannerIT
  WeakNotificationIT
  WorkerIT
  FluoIT
  LogIT

* Moved @since tag to the bottom of javadoc info.
Changed param rowPrefix to row, and updated javadocs for the following methods:
  overPrefix(Bytes, Column){...}
  overPrefix(CharSequence, Column){...}
Removed use of Bytes.of(String) calls within over() calls from FloutIT tests

* fixed javadoc errors
