add self-contain jnotify