X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/b9f0177e6a477a518fd5a89156fafde57f2dddf8..0b898bf7c9337ac0f2385159329d2f3e6a1694ec:/services/ws/session_v0.go diff --git a/services/ws/session_v0.go b/services/ws/session_v0.go index 2b108a2b5c..44e2a1deb5 100644 --- a/services/ws/session_v0.go +++ b/services/ws/session_v0.go @@ -16,7 +16,7 @@ var ( errQueueFull = errors.New("client queue full") errFrameTooBig = errors.New("frame too big") - sendObjectAttributes = []string{"state", "name"} + sendObjectAttributes = []string{"state", "name", "owner_uuid", "portable_data_hash"} v0subscribeOK = []byte(`{"status":200}`) v0subscribeFail = []byte(`{"status":400}`) @@ -35,6 +35,9 @@ type v0session struct { setupOnce sync.Once } +// newSessionV0 returns a v0 session: a partial port of the Rails/puma +// implementation, with just enough functionality to support Workbench +// and arv-mount. func newSessionV0(ws wsConn, sendq chan<- interface{}, db *sql.DB, pc permChecker, ac *arvados.Client) (session, error) { sess := &v0session{ sendq: sendq, @@ -97,6 +100,7 @@ func (sess *v0session) EventMessage(e *event) ([]byte, error) { "object_owner_uuid": detail.ObjectOwnerUUID, "object_kind": kind, "event_type": detail.EventType, + "event_at": detail.EventAt, } if detail.Properties != nil && detail.Properties["text"] != nil { msg["properties"] = detail.Properties