package inotify
import "k8s.io/kubernetes/Godeps/_workspace/src/golang.org/x/exp/inotify"
Package inotify implements a wrapper for the Linux inotify system.
Example:
watcher, err := inotify.NewWatcher() if err != nil { log.Fatal(err) } err = watcher.Watch("/tmp") if err != nil { log.Fatal(err) } for { select { case ev := <-watcher.Event: log.Println("event:", ev) case err := <-watcher.Error: log.Println("error:", err) } }
Index ¶
Constants ¶
const ( // Options for AddWatch IN_DONT_FOLLOW uint32 = syscall.IN_DONT_FOLLOW IN_ONESHOT uint32 = syscall.IN_ONESHOT IN_ONLYDIR uint32 = syscall.IN_ONLYDIR // Events IN_ACCESS uint32 = syscall.IN_ACCESS IN_ALL_EVENTS uint32 = syscall.IN_ALL_EVENTS IN_ATTRIB uint32 = syscall.IN_ATTRIB IN_CLOSE uint32 = syscall.IN_CLOSE IN_CLOSE_NOWRITE uint32 = syscall.IN_CLOSE_NOWRITE IN_CLOSE_WRITE uint32 = syscall.IN_CLOSE_WRITE IN_CREATE uint32 = syscall.IN_CREATE IN_DELETE uint32 = syscall.IN_DELETE IN_DELETE_SELF uint32 = syscall.IN_DELETE_SELF IN_MODIFY uint32 = syscall.IN_MODIFY IN_MOVE uint32 = syscall.IN_MOVE IN_MOVED_FROM uint32 = syscall.IN_MOVED_FROM IN_MOVED_TO uint32 = syscall.IN_MOVED_TO IN_MOVE_SELF uint32 = syscall.IN_MOVE_SELF IN_OPEN uint32 = syscall.IN_OPEN // Special events IN_ISDIR uint32 = syscall.IN_ISDIR IN_IGNORED uint32 = syscall.IN_IGNORED IN_Q_OVERFLOW uint32 = syscall.IN_Q_OVERFLOW IN_UNMOUNT uint32 = syscall.IN_UNMOUNT )
Types ¶
type Event ¶
type Event struct { Mask uint32 // Mask of events Cookie uint32 // Unique cookie associating related events (for rename(2)) Name string // File name (optional) }
func (*Event) String ¶
String formats the event e in the form "filename: 0xEventMask = IN_ACCESS|IN_ATTRIB_|..."
type Watcher ¶
type Watcher struct { Error chan error // Errors are sent on this channel Event chan *Event // Events are returned on this channel // contains filtered or unexported fields }
func NewWatcher ¶
NewWatcher creates and returns a new inotify instance using inotify_init(2)
func (*Watcher) AddWatch ¶
AddWatch adds path to the watched file set. The flags are interpreted as described in inotify_add_watch(2).
func (*Watcher) Close ¶
Close closes an inotify watcher instance It sends a message to the reader goroutine to quit and removes all watches associated with the inotify instance
func (*Watcher) RemoveWatch ¶
RemoveWatch removes path from the watched file set.
func (*Watcher) Watch ¶
Watch adds path to the watched file set, watching all events.
Source Files ¶
inotify_linux.go
- Version
- v1.1.9-beta.0
- Published
- Feb 23, 2016
- Platform
- linux/amd64
- Imports
- 7 packages
- Last checked
- 6 seconds ago –
Tools for package owners.