44import * as fse from "fs-extra" ;
55import * as _ from "lodash" ;
66import * as path from "path" ;
7- import { commands , Disposable , ExtensionContext , QuickPickItem , TextEditor , TreeView ,
8- TreeViewExpansionEvent , TreeViewSelectionChangeEvent , TreeViewVisibilityChangeEvent , Uri , window } from "vscode" ;
7+ import {
8+ commands , Disposable , ExtensionContext , QuickPickItem , TextEditor , TreeView ,
9+ TreeViewExpansionEvent , TreeViewSelectionChangeEvent , TreeViewVisibilityChangeEvent , Uri , window ,
10+ } from "vscode" ;
911import { instrumentOperationAsVsCodeCommand , sendInfo } from "vscode-extension-telemetry-wrapper" ;
1012import { Commands } from "../commands" ;
1113import { Build } from "../constants" ;
@@ -17,7 +19,6 @@ import { Jdtls } from "../java/jdtls";
1719import { INodeData } from "../java/nodeData" ;
1820import { Settings } from "../settings" ;
1921import { EventCounter , Utility } from "../utility" ;
20- import { Lock } from "../utils/Lock" ;
2122import { DataNode } from "./dataNode" ;
2223import { DependencyDataProvider } from "./dependencyDataProvider" ;
2324import { ExplorerNode } from "./explorerNode" ;
@@ -34,8 +35,6 @@ export class DependencyExplorer implements Disposable {
3435
3536 private static _instance : DependencyExplorer ;
3637
37- private _lock : Lock = new Lock ( ) ;
38-
3938 private _dependencyViewer : TreeView < ExplorerNode > ;
4039
4140 private _dataProvider : DependencyDataProvider ;
@@ -54,7 +53,7 @@ export class DependencyExplorer implements Disposable {
5453 } ) ,
5554 this . _dependencyViewer . onDidChangeVisibility ( ( e : TreeViewVisibilityChangeEvent ) => {
5655 if ( e . visible ) {
57- sendInfo ( "" , { projectManagerVisible : 1 } ) ;
56+ sendInfo ( "" , { projectManagerVisible : 1 } ) ;
5857 if ( window . activeTextEditor ) {
5958 this . reveal ( window . activeTextEditor . document . uri ) ;
6059 }
@@ -145,33 +144,27 @@ export class DependencyExplorer implements Disposable {
145144 }
146145
147146 public async reveal ( uri : Uri , needCheckSyncSetting : boolean = true ) : Promise < void > {
148- try {
149- await this . _lock . acquire ( ) ;
150-
151- if ( needCheckSyncSetting && ! Settings . syncWithFolderExplorer ( ) ) {
152- return ;
153- }
154-
155- if ( ! await Utility . isRevealable ( uri ) ) {
156- return ;
157- }
147+ if ( needCheckSyncSetting && ! Settings . syncWithFolderExplorer ( ) ) {
148+ return ;
149+ }
158150
159- let node : DataNode | undefined = explorerNodeCache . getDataNode ( uri ) ;
160- if ( ! node ) {
161- const paths : INodeData [ ] = await Jdtls . resolvePath ( uri . toString ( ) ) ;
162- if ( ! _ . isEmpty ( paths ) ) {
163- node = await this . _dataProvider . revealPaths ( paths ) ;
164- }
165- }
151+ if ( ! await Utility . isRevealable ( uri ) ) {
152+ return ;
153+ }
166154
167- if ( ! node ) {
168- return ;
155+ let node : DataNode | undefined = explorerNodeCache . getDataNode ( uri ) ;
156+ if ( ! node ) {
157+ const paths : INodeData [ ] = await Jdtls . resolvePath ( uri . toString ( ) ) ;
158+ if ( ! _ . isEmpty ( paths ) ) {
159+ node = await this . _dataProvider . revealPaths ( paths ) ;
169160 }
161+ }
170162
171- await this . _dependencyViewer . reveal ( node ) ;
172- } finally {
173- this . _lock . release ( ) ;
163+ if ( ! node ) {
164+ return ;
174165 }
166+
167+ await this . _dependencyViewer . reveal ( node ) ;
175168 }
176169
177170 public get dataProvider ( ) : DependencyDataProvider {
0 commit comments