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