From 2a57c26cec59d874ab3ca3468f60243d15efe333 Mon Sep 17 00:00:00 2001 From: Aaron Jacobs Date: Fri, 20 Mar 2015 10:32:25 +1100 Subject: [PATCH] Began on a file system to help test flush/fsync support. --- samples/flushfs/flush_fs.go | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 samples/flushfs/flush_fs.go diff --git a/samples/flushfs/flush_fs.go b/samples/flushfs/flush_fs.go new file mode 100644 index 0000000..6a2416b --- /dev/null +++ b/samples/flushfs/flush_fs.go @@ -0,0 +1,26 @@ +// Copyright 2015 Google Inc. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package flushfs + +import "github.com/jacobsa/fuse" + +// Create a file system containing a single file named "foo". +// +// The file may be opened for reading and/or writing. Its initial contents are +// empty. Whenever a flush or fsync is received, the supplied function will be +// called with the current contents of the file. +func NewFileSystem( + reportFlush func([]byte), + reportFsync func([]byte)) (fs fuse.FileSystem, err error)