public virtual ContentWatcher Watcher(params string[] name) {
if (_watchers == null) {
_watchers = new Dictionary<string, ContentWatcher>();
}
var nameCombined = Path.Combine(name);
if (_watchers.ContainsKey(nameCombined)) return _watchers[nameCombined];
var directory = GetSubdirectoryFilename(nameCombined);
if (!Directory.Exists(directory)) {
Directory.CreateDirectory(directory);
}
_watchers[nameCombined] = new ContentWatcher(directory);
return _watchers[nameCombined];
}