@@ -22,18 +22,39 @@ import javax.swing.tree.TreePath
22
22
23
23
class RefreshAction : StructureTreeAction (IActiveContext : :class.java) {
24
24
25
- override fun actionPerformed (event : AnActionEvent ? , path : TreePath ? , selectedNode : Any? ) {
26
- val descriptor = selectedNode?.getDescriptor() ? : return
27
- run (" Refreshing $selectedNode ..." , true ,
28
- Progressive {
29
- val telemetry = TelemetryService .instance.action(" refresh resource" )
30
- try {
31
- descriptor.invalidate()
32
- sendTelemetry(getResourceKind(descriptor.element), telemetry)
33
- } catch (e: Exception ) {
34
- logger<RefreshAction >().warn(" Could not refresh $descriptor resources." , e)
35
- telemetry.error(e).send()
36
- }
37
- })
38
- }
25
+ override fun actionPerformed (event : AnActionEvent ? , path : TreePath ? , selectedNode : Any? ) {
26
+ val descriptor = selectedNode?.getDescriptor()
27
+ run (
28
+ " Refreshing $selectedNode ..." , true ,
29
+ Progressive {
30
+ val telemetry = TelemetryService .instance.action(
31
+ " refresh ${
32
+ if (descriptor != null ) {
33
+ " resource"
34
+ } else {
35
+ " all contexts"
36
+ }
37
+ } "
38
+ )
39
+ try {
40
+ if (descriptor != null ) {
41
+ descriptor.invalidate()
42
+ sendTelemetry(getResourceKind(descriptor.element), telemetry)
43
+ } else {
44
+ getResourceModel()?.invalidate();
45
+ telemetry.send()
46
+ }
47
+ } catch (e: Exception ) {
48
+ logger<RefreshAction >().warn(
49
+ " Could not refresh ${
50
+ if (descriptor != null ) {
51
+ " $descriptor resources"
52
+ } else {
53
+ " all contexts."
54
+ }
55
+ } " , e
56
+ )
57
+ }
58
+ })
59
+ }
39
60
}
0 commit comments