OSDN Git Service

Merge pull request #201 from Bytom/v0.1
[bytom/vapor.git] / vendor / github.com / rjeczalik / notify / event_readdcw.go
diff --git a/vendor/github.com/rjeczalik/notify/event_readdcw.go b/vendor/github.com/rjeczalik/notify/event_readdcw.go
deleted file mode 100644 (file)
index f7b82de..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-// Copyright (c) 2014-2015 The Notify Authors. All rights reserved.
-// Use of this source code is governed by the MIT license that can be
-// found in the LICENSE file.
-
-// +build windows
-
-package notify
-
-import (
-       "os"
-       "path/filepath"
-       "syscall"
-)
-
-// Platform independent event values.
-const (
-       osSpecificCreate Event = 1 << (20 + iota)
-       osSpecificRemove
-       osSpecificWrite
-       osSpecificRename
-       // recursive is used to distinguish recursive eventsets from non-recursive ones
-       recursive
-       // omit is used for dispatching internal events; only those events are sent
-       // for which both the event and the watchpoint has omit in theirs event sets.
-       omit
-       // dirmarker TODO(pknap)
-       dirmarker
-)
-
-// ReadDirectoryChangesW filters
-// On Windows the following events can be passed to Watch. A different set of
-// events (see actions below) are received on the channel passed to Watch.
-// For more information refer to
-// https://msdn.microsoft.com/en-us/library/windows/desktop/aa365465(v=vs.85).aspx
-const (
-       FileNotifyChangeFileName   = Event(syscall.FILE_NOTIFY_CHANGE_FILE_NAME)
-       FileNotifyChangeDirName    = Event(syscall.FILE_NOTIFY_CHANGE_DIR_NAME)
-       FileNotifyChangeAttributes = Event(syscall.FILE_NOTIFY_CHANGE_ATTRIBUTES)
-       FileNotifyChangeSize       = Event(syscall.FILE_NOTIFY_CHANGE_SIZE)
-       FileNotifyChangeLastWrite  = Event(syscall.FILE_NOTIFY_CHANGE_LAST_WRITE)
-       FileNotifyChangeLastAccess = Event(syscall.FILE_NOTIFY_CHANGE_LAST_ACCESS)
-       FileNotifyChangeCreation   = Event(syscall.FILE_NOTIFY_CHANGE_CREATION)
-       FileNotifyChangeSecurity   = Event(syscallFileNotifyChangeSecurity)
-)
-
-const (
-       fileNotifyChangeAll      = 0x17f // logical sum of all FileNotifyChange* events.
-       fileNotifyChangeModified = fileNotifyChangeAll &^ (FileNotifyChangeFileName | FileNotifyChangeDirName)
-)
-
-// according to: http://msdn.microsoft.com/en-us/library/windows/desktop/aa365465(v=vs.85).aspx
-// this flag should be declared in: http://golang.org/src/pkg/syscall/ztypes_windows.go
-const syscallFileNotifyChangeSecurity = 0x00000100
-
-// ReadDirectoryChangesW actions
-// The following events are returned on the channel passed to Watch, but cannot
-// be passed to Watch itself (see filters above). You can find a table showing
-// the relation between actions and filteres at
-// https://github.com/rjeczalik/notify/issues/10#issuecomment-66179535
-// The msdn documentation on actions is part of
-// https://msdn.microsoft.com/en-us/library/windows/desktop/aa364391(v=vs.85).aspx
-const (
-       FileActionAdded          = Event(syscall.FILE_ACTION_ADDED) << 12
-       FileActionRemoved        = Event(syscall.FILE_ACTION_REMOVED) << 12
-       FileActionModified       = Event(syscall.FILE_ACTION_MODIFIED) << 14
-       FileActionRenamedOldName = Event(syscall.FILE_ACTION_RENAMED_OLD_NAME) << 15
-       FileActionRenamedNewName = Event(syscall.FILE_ACTION_RENAMED_NEW_NAME) << 16
-)
-
-const fileActionAll = 0x7f000 // logical sum of all FileAction* events.
-
-var osestr = map[Event]string{
-       FileNotifyChangeFileName:   "notify.FileNotifyChangeFileName",
-       FileNotifyChangeDirName:    "notify.FileNotifyChangeDirName",
-       FileNotifyChangeAttributes: "notify.FileNotifyChangeAttributes",
-       FileNotifyChangeSize:       "notify.FileNotifyChangeSize",
-       FileNotifyChangeLastWrite:  "notify.FileNotifyChangeLastWrite",
-       FileNotifyChangeLastAccess: "notify.FileNotifyChangeLastAccess",
-       FileNotifyChangeCreation:   "notify.FileNotifyChangeCreation",
-       FileNotifyChangeSecurity:   "notify.FileNotifyChangeSecurity",
-
-       FileActionAdded:          "notify.FileActionAdded",
-       FileActionRemoved:        "notify.FileActionRemoved",
-       FileActionModified:       "notify.FileActionModified",
-       FileActionRenamedOldName: "notify.FileActionRenamedOldName",
-       FileActionRenamedNewName: "notify.FileActionRenamedNewName",
-}
-
-const (
-       fTypeUnknown uint8 = iota
-       fTypeFile
-       fTypeDirectory
-)
-
-// TODO(ppknap) : doc.
-type event struct {
-       pathw  []uint16
-       name   string
-       ftype  uint8
-       action uint32
-       filter uint32
-       e      Event
-}
-
-func (e *event) Event() Event     { return e.e }
-func (e *event) Path() string     { return filepath.Join(syscall.UTF16ToString(e.pathw), e.name) }
-func (e *event) Sys() interface{} { return e.ftype }
-
-func (e *event) isDir() (bool, error) {
-       if e.ftype != fTypeUnknown {
-               return e.ftype == fTypeDirectory, nil
-       }
-       fi, err := os.Stat(e.Path())
-       if err != nil {
-               return false, err
-       }
-       return fi.IsDir(), nil
-}