public JavaEditorNavigationSource(ITextBuffer textBuffer, IBackgroundParser backgroundParser, JavaEditorNavigationSourceProvider provider)
        {
            Contract.Requires <ArgumentNullException>(textBuffer != null, "textBuffer");
            Contract.Requires <ArgumentNullException>(backgroundParser != null, "backgroundParser");
            Contract.Requires <ArgumentNullException>(provider != null, "provider");

            this.TextBuffer       = textBuffer;
            this.BackgroundParser = backgroundParser;
            this._provider        = provider;

            this._navigationTargets = new List <IEditorNavigationTarget>();

            this.BackgroundParser.ParseComplete += HandleBackgroundParseComplete;
            this.BackgroundParser.RequestParse(false);
        }
        public JavaEditorNavigationSource(ITextBuffer textBuffer, IBackgroundParser backgroundParser, JavaEditorNavigationSourceProvider provider)
        {
            Contract.Requires<ArgumentNullException>(textBuffer != null, "textBuffer");
            Contract.Requires<ArgumentNullException>(backgroundParser != null, "backgroundParser");
            Contract.Requires<ArgumentNullException>(provider != null, "provider");

            this.TextBuffer = textBuffer;
            this.BackgroundParser = backgroundParser;
            this._provider = provider;

            this._navigationTargets = new List<IEditorNavigationTarget>();

            this.BackgroundParser.ParseComplete += HandleBackgroundParseComplete;
            this.BackgroundParser.RequestParse(false);
        }