6
6
import fi .helsinki .cs .tmc .data .ResultCollector ;
7
7
import fi .helsinki .cs .tmc .model .ProjectMediator ;
8
8
import fi .helsinki .cs .tmc .model .TmcProjectInfo ;
9
- import fi .helsinki .cs .tmc .model .NBTmcSettings ;
10
9
import fi .helsinki .cs .tmc .model .TmcCoreSingleton ;
11
10
import fi .helsinki .cs .tmc .stylerunner .validation .CheckstyleResult ;
12
11
import fi .helsinki .cs .tmc .stylerunner .validation .ValidationResult ;
13
12
import fi .helsinki .cs .tmc .ui .ConvenientDialogDisplayer ;
14
13
import fi .helsinki .cs .tmc .core .exceptions .TmcCoreException ;
14
+ import fi .helsinki .cs .tmc .stylerunner .validation .Strategy ;
15
+ import fi .helsinki .cs .tmc .stylerunner .validation .ValidationError ;
16
+ import java .io .File ;
15
17
import java .nio .file .Paths ;
18
+ import java .util .HashMap ;
19
+ import java .util .List ;
20
+ import java .util .Map ;
16
21
17
22
import javax .swing .SwingUtilities ;
18
23
@@ -32,11 +37,11 @@ public void performAction(final ResultCollector resultCollector, final Project p
32
37
final String projectType = projectInfo .getProjectType ().name ();
33
38
ProjectMediator .getInstance ().saveAllFiles ();
34
39
try {
35
- ListenableFuture <ValidationResult > result = TmcCoreSingleton .getInstance ().runCheckstyle (
36
- Paths .get (
37
- projectInfo .getProjectDirAsFile ().getAbsolutePath ()
38
- ));
39
- Futures .addCallback (result , new ExplainValidationResult (resultCollector , dialogDisplayer ));
40
+ ListenableFuture <ValidationResult > result = TmcCoreSingleton .getInstance ().runCheckstyle (
41
+ Paths .get (
42
+ projectInfo .getProjectDirAsFile ().getAbsolutePath ()
43
+ ));
44
+ Futures .addCallback (result , new ExplainValidationResult (resultCollector , dialogDisplayer ));
40
45
} catch (TmcCoreException ex ) {
41
46
ConvenientDialogDisplayer .getDefault ().displayError ("Checkstyle audit failed." );
42
47
Exceptions .printStackTrace (ex );
@@ -60,17 +65,33 @@ public void onSuccess(final ValidationResult v) {
60
65
SwingUtilities .invokeLater (new Runnable () {
61
66
@ Override
62
67
public void run () {
68
+ System .out .println ("style done yay" );
63
69
resultCollector .setValidationResult (v );
64
70
}
65
71
});
66
72
}
67
73
68
74
@ Override
69
- public void onFailure (Throwable thrwbl ) {
75
+ public void onFailure (final Throwable ex ) {
70
76
SwingUtilities .invokeLater (new Runnable () {
71
77
@ Override
72
78
public void run () {
73
- dialogDisplayer .displayError ("Failed to validate the code." );
79
+ if (ex instanceof UnsupportedOperationException ) {
80
+ resultCollector .setValidationResult (new ValidationResult () {
81
+
82
+ @ Override
83
+ public Strategy getStrategy () {
84
+ return null ;
85
+ }
86
+
87
+ @ Override
88
+ public Map <File , List <ValidationError >> getValidationErrors () {
89
+ return new HashMap <File , List <ValidationError >>();
90
+ }
91
+ });
92
+ } else {
93
+ dialogDisplayer .displayError ("Failed to validate the code." );
94
+ }
74
95
}
75
96
});
76
97
}
0 commit comments