diff --git a/server/hdl_files.go b/server/hdl_files.go index a06d2e3..36ef3eb 100644 --- a/server/hdl_files.go +++ b/server/hdl_files.go @@ -257,7 +257,7 @@ func largeFileReceiveHTTP(wrt http.ResponseWriter, req *http.Request) { writeHttpResponse(ErrAuthRequired(msgID, "", now, now), nil) return } - meetingID, meetingNoteIdempotencyKey, err := meetingNoteUploadParams(req, principal) + meetingID, _, err := meetingNoteUploadParams(req, principal) if err != nil { writeHttpResponse(decodeStoreError(err, msgID, now, nil), err) return @@ -375,16 +375,8 @@ func largeFileReceiveHTTP(wrt http.ResponseWriter, req *http.Request) { params["expires"] = now.Add(globals.mediaGcPeriod).Format(types.TimeFormatRFC3339) } if meetingID != "" { - noteFile, err := createMeetingNoteFromUpload(principal, meetingID, meetingNoteIdempotencyKey, fdef) - if err != nil { - writeHttpResponse(decodeStoreError(err, msgID, now, nil), err) - return - } params["purpose"] = fileUploadPurposeMeetingNote - params["meeting_id"] = noteFile.MeetingID - params["note_file_id"] = noteFile.NoteFileID - params["note_file_status"] = noteFile.Status - params["version"] = noteFile.Version + params["meeting_id"] = meetingID } writeHttpResponse(NoErrParams(msgID, "", now, params), nil) @@ -398,9 +390,6 @@ func meetingNoteUploadParams(req *http.Request, principal RequestPrincipal) (str if principal.UID.IsZero() { return "", "", types.ErrPermissionDenied } - if store.MeetingNotes == nil { - return "", "", types.ErrUnsupported - } meetingID := strings.TrimSpace(req.FormValue("meeting_id")) if meetingID == "" { return "", "", types.ErrMalformed @@ -415,14 +404,6 @@ func meetingNoteUploadParams(req *http.Request, principal RequestPrincipal) (str return meetingID, idempotencyKey, nil } -func createMeetingNoteFromUpload(principal RequestPrincipal, meetingID, idempotencyKey string, fdef *types.FileDef) (*types.MeetingNoteFile, error) { - if fdef == nil || fdef.Uid().IsZero() { - return nil, types.ErrMalformed - } - noteFileID := "mnote_" + store.Store.GetUidString() - return store.MeetingNotes.CreateFile(principal.TenantID, principal.UID, meetingID, noteFileID, fdef.Uid().String(), idempotencyKey) -} - // LargeFileServe is the gRPC equivalent of largeFileServeHTTP. func (*grpcNodeServer) LargeFileServe(req *pbx.FileDownReq, stream pbx.Node_LargeFileServeServer) error { now := types.TimeNow() diff --git a/server/hdl_files_test.go b/server/hdl_files_test.go index 8621038..01ac957 100644 --- a/server/hdl_files_test.go +++ b/server/hdl_files_test.go @@ -210,7 +210,7 @@ func TestLargeFileGarbageCollectTenantsScopesDeletes(t *testing.T) { largeFileGarbageCollectTenants([]types.TenantID{7, 8}, olderThan, 25) } -func TestLargeFileReceiveMeetingNoteUploadCreatesNoteFile(t *testing.T) { +func TestLargeFileReceiveMeetingNoteUploadReturnsFileID(t *testing.T) { ctrl := gomock.NewController(t) defer ctrl.Finish() @@ -229,17 +229,15 @@ func TestLargeFileReceiveMeetingNoteUploadCreatesNoteFile(t *testing.T) { mockStore := mock_store.NewMockPersistentStorageInterface(ctrl) tokenAuth := mock_auth.NewMockAuthHandler(ctrl) files := mock_store.NewMockFilePersistenceInterface(ctrl) - notes := &testMeetingNotesStore{} store.Store = mockStore store.Files = files - store.MeetingNotes = notes + store.MeetingNotes = nil kafkaBus = nil fileID := types.Uid(101) mockStore.EXPECT().GetMediaHandler().Return(handler).AnyTimes() mockStore.EXPECT().GetLogicalAuthHandler("token").Return(tokenAuth) mockStore.EXPECT().GetUidString().Return(fileID.String()) - mockStore.EXPECT().GetUidString().Return("note-1") tokenAuth.EXPECT().Authenticate(auth.AuthContext{RemoteAddr: "192.0.2.1:12345"}, []byte("token-1")). Return(&auth.Rec{TenantID: 7, Uid: 42, AuthLevel: auth.LevelAuth}, nil, nil) files.EXPECT().FinishUpload(types.TenantID(7), gomock.Any(), true, int64(11)).DoAndReturn( @@ -289,10 +287,13 @@ func TestLargeFileReceiveMeetingNoteUploadCreatesNoteFile(t *testing.T) { } params := resp.Ctrl.Params.(map[string]any) if params["file_id"] != fileID.String() || params["purpose"] != fileUploadPurposeMeetingNote || - params["meeting_id"] != "mtg_test" || params["note_file_id"] != "mnote_note-1" { + params["meeting_id"] != "mtg_test" { t.Fatalf("unexpected upload params: %#v", params) } - if handler.data != "hello notes" || handler.def.OriginalName != "notes.txt" || notes.createdFileID != fileID.String() || notes.createdMeetingID != "mtg_test" || notes.createdIdempotencyKey != "upload-meeting-note-1" { - t.Fatalf("unexpected side effects: handler=%#v notes=%#v", handler, notes) + if _, ok := params["note_file_id"]; ok { + t.Fatalf("upload should not bind meeting note file: %#v", params) + } + if handler.data != "hello notes" || handler.def.OriginalName != "notes.txt" { + t.Fatalf("unexpected side effects: handler=%#v", handler) } }