veyron2/services/mgmt/logreader: Split types into separate pkg

Split the logreader interface into two separate packages: one for the
interface itself, and one for the types.

This will allow implementations to use the generated types without
depending on the generated stubs.

Change-Id: I83d9c0c8f76442771a697008eb4d98e9d829850d
diff --git a/services/mgmt/logreader/impl/common.go b/services/mgmt/logreader/impl/common.go
index ccc98b9..ad59aae 100644
--- a/services/mgmt/logreader/impl/common.go
+++ b/services/mgmt/logreader/impl/common.go
@@ -8,14 +8,14 @@
 	"path"
 	"strings"
 
-	"veyron2/services/mgmt/logreader"
+	"veyron2/services/mgmt/logreader/types"
 	"veyron2/verror"
 )
 
 var (
 	errCanceled        = verror.Abortedf("operation canceled")
 	errNotFound        = verror.NotFoundf("log file not found")
-	errEOF             = verror.Make(logreader.EOF, "EOF")
+	errEOF             = verror.Make(types.EOF, "EOF")
 	errOperationFailed = verror.Internalf("operation failed")
 )
 
diff --git a/services/mgmt/logreader/impl/logfile_invoker.go b/services/mgmt/logreader/impl/logfile_invoker.go
index 74ca226..a6820ea 100644
--- a/services/mgmt/logreader/impl/logfile_invoker.go
+++ b/services/mgmt/logreader/impl/logfile_invoker.go
@@ -8,6 +8,7 @@
 
 	"veyron2/ipc"
 	"veyron2/services/mgmt/logreader"
+	"veyron2/services/mgmt/logreader/types"
 	"veyron2/vlog"
 )
 
@@ -64,7 +65,7 @@
 		return 0, errOperationFailed
 	}
 	reader := newFollowReader(context, f, startpos, follow)
-	if numEntries == logreader.AllEntries {
+	if numEntries == types.AllEntries {
 		numEntries = int32(math.MaxInt32)
 	}
 	sender := stream.SendStream()
@@ -79,7 +80,7 @@
 		if err != nil {
 			return reader.tell(), errOperationFailed
 		}
-		if err := sender.Send(logreader.LogEntry{Position: offset, Line: line}); err != nil {
+		if err := sender.Send(types.LogEntry{Position: offset, Line: line}); err != nil {
 			return reader.tell(), err
 		}
 	}
diff --git a/services/mgmt/logreader/impl/logfile_invoker_test.go b/services/mgmt/logreader/impl/logfile_invoker_test.go
index 171b293..8980595 100644
--- a/services/mgmt/logreader/impl/logfile_invoker_test.go
+++ b/services/mgmt/logreader/impl/logfile_invoker_test.go
@@ -13,6 +13,7 @@
 	"veyron2/rt"
 	"veyron2/security"
 	"veyron2/services/mgmt/logreader"
+	"veyron2/services/mgmt/logreader/types"
 	"veyron2/verror"
 )
 
@@ -87,7 +88,7 @@
 	}
 
 	// Read without follow.
-	stream, err := lf.ReadLog(runtime.NewContext(), 0, logreader.AllEntries, false)
+	stream, err := lf.ReadLog(runtime.NewContext(), 0, types.AllEntries, false)
 	if err != nil {
 		t.Errorf("ReadLog failed: %v", err)
 	}
@@ -116,12 +117,12 @@
 	}
 
 	// Read with follow from EOF (where the previous read ended).
-	stream, err = lf.ReadLog(runtime.NewContext(), offset, logreader.AllEntries, false)
+	stream, err = lf.ReadLog(runtime.NewContext(), offset, types.AllEntries, false)
 	if err != nil {
 		t.Errorf("ReadLog failed: %v", err)
 	}
 	_, err = stream.Finish()
-	if !verror.Is(err, logreader.EOF) {
+	if !verror.Is(err, types.EOF) {
 		t.Errorf("unexpected error, got %#v, want EOF", err)
 	}
 }