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)
}
}