Skip to content

Commit f9cf090

Browse files
author
rcartwright
committed
This commit adds the volatile modifier to some naked (neither volatile or final) fields of potentially shared classes. It also cleans up
formatting in a few places. The following files were modified: M src/edu/rice/cs/drjava/model/debug/jpda/JPDADebugger.java M src/edu/rice/cs/drjava/model/DJError.java M src/edu/rice/cs/drjava/model/GlobalModelTestCase.java M src/edu/rice/cs/drjava/model/definitions/DefinitionsDocument.java M src/edu/rice/cs/drjava/model/definitions/reducedmodel/BraceTest.java M src/edu/rice/cs/drjava/model/definitions/DefinitionsEditorKit.java M src/edu/rice/cs/drjava/model/junit/DefaultJUnitModel.java M src/edu/rice/cs/drjava/model/junit/JUnitError.java M src/edu/rice/cs/drjava/model/junit/JUnitErrorModel.java M src/edu/rice/cs/drjava/model/junit/JUnitErrorModelTest.java M src/edu/rice/cs/drjava/model/repl/HistoryTest.java M src/edu/rice/cs/drjava/model/repl/InteractionsDJDocument.java M src/edu/rice/cs/drjava/model/compiler/DefaultCompilerModel.java M src/edu/rice/cs/drjava/model/compiler/CompilerErrorModel.java M src/edu/rice/cs/drjava/model/compiler/LanguageLevelStackTraceMapper.java M src/edu/rice/cs/drjava/model/DummyGlobalModel.java M src/edu/rice/cs/drjava/model/AbstractGlobalModel.java M src/edu/rice/cs/drjava/config/ConfigOptionListeners.java M src/edu/rice/cs/drjava/config/RecursiveFileListPropertyTest.java M src/edu/rice/cs/drjava/project/ProjectProfile.java M src/edu/rice/cs/drjava/ui/MainFrame.java M src/edu/rice/cs/drjava/ui/CompilerErrorPanel.java M src/edu/rice/cs/drjava/ui/InteractionsPane.java M src/edu/rice/cs/drjava/ui/TabbedPanel.java M src/edu/rice/cs/drjava/ui/JarOptionsDialog.java M src/edu/rice/cs/drjava/ui/ErrorPanel.java M src/edu/rice/cs/drjava/ui/config/ConfigFrame.java M src/edu/rice/cs/drjava/ui/config/ConfigPanel.java M src/edu/rice/cs/drjava/ui/InteractionsPaneTest.java M src/edu/rice/cs/drjava/ui/JUnitPanel.java M src/edu/rice/cs/drjava/ui/DrJavaErrorHandler.java M src/edu/rice/cs/util/FileOps.java M src/edu/rice/cs/util/docnavigation/JListNavigator.java M src/edu/rice/cs/util/docnavigation/GroupNode.java M src/edu/rice/cs/util/docnavigation/FileNode.java M src/edu/rice/cs/util/docnavigation/JTreeSortNavigatorTest.java M src/edu/rice/cs/util/swing/CenteredIcon.java M src/edu/rice/cs/util/swing/LayeredIcon.java M src/edu/rice/cs/util/swing/DropDownButton.java M src/edu/rice/cs/util/sexp/Tokens.java M src/edu/rice/cs/util/sexp/NumberAtom.java M src/edu/rice/cs/util/BalancingStreamTokenizerTest.java git-svn-id: file:///tmp/test-svn/trunk@5439 fe72c1cf-3628-48e9-8b72-1c46755d3cff
1 parent 3ce53d0 commit f9cf090

42 files changed

Lines changed: 323 additions & 496 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

drjava/src/edu/rice/cs/drjava/config/ConfigOptionListeners.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -507,7 +507,7 @@ public static void sanitizeJavadocCustomParams(JFrame parent,
507507
// clean up
508508
String[] params = value.split("(-private|-protected|-package|-public)");
509509
sb = new StringBuilder();
510-
for(int i = 0; i < params.length; i++){
510+
for(int i = 0; i < params.length; i++) {
511511
if(!params[i].trim().equals("")) { sb.append(params[i].trim()); sb.append(' '); }
512512
}
513513
DrJava.getConfig().setSetting(JAVADOC_CUSTOM_PARAMS, sb.toString().trim());

drjava/src/edu/rice/cs/drjava/config/RecursiveFileListPropertyTest.java

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,19 +13,15 @@
1313
*/
1414
public class RecursiveFileListPropertyTest extends TestCase {
1515

16-
/**
17-
* Test the RegexFilter inner class.
18-
*/
16+
/** Test the RegexFilter inner class. */
1917
public void testRegexFilter() {
2018
FileFilter filter = new RecursiveFileListProperty.RegexFilter(".");
2119
Assert.assertTrue("Does not accept single char strings", filter.accept(new File("a")));
2220
Assert.assertFalse("Does not reject non-length 1 strings", filter.accept(new File("abc")));
2321
}
2422

25-
/**
26-
* Test the FileMaskFilter inner class.
27-
*/
28-
public void testFileMaskFilter(){
23+
/** Test the FileMaskFilter inner class. */
24+
public void testFileMaskFilter() {
2925
RecursiveFileListProperty.FileMaskFilter filter = new RecursiveFileListProperty.FileMaskFilter("?");
3026

3127
filter.addIncludedFile(new File("abc"));

drjava/src/edu/rice/cs/drjava/model/AbstractGlobalModel.java

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -466,15 +466,13 @@ public void setMainClass(String f) {
466466
public String getMainClass() { return _state.getMainClass(); }
467467

468468
/** @return the file containing the project's main class. */
469-
public File getMainClassContainingFile(){
469+
public File getMainClassContainingFile() {
470470
String path = getMainClass();
471471

472-
if (path == null){
473-
return null;
474-
}
472+
if (path == null) return null;
475473

476474
// TODO: What about language level file extensions? What about Habanero Java extension?
477-
if (path.toLowerCase().endsWith(OptionConstants.JAVA_FILE_EXTENSION)){
475+
if (path.toLowerCase().endsWith(OptionConstants.JAVA_FILE_EXTENSION)) {
478476
return new File(getProjectFile().getParent(), path);
479477
} //if
480478

@@ -486,13 +484,10 @@ public File getMainClassContainingFile(){
486484
// some/package/SomeClass.java (not found)
487485
path = path.replace('.', File.separatorChar);
488486
File tempFile = new File(getProjectRoot(), path+OptionConstants.JAVA_FILE_EXTENSION);
489-
while (path.length() > 0){
490-
if (tempFile.exists()){
491-
return tempFile;
492-
} //if
487+
while (path.length() > 0) {
488+
if (tempFile.exists()) return tempFile;
493489

494-
if (path.indexOf(File.separatorChar) == -1)
495-
break;
490+
if (path.indexOf(File.separatorChar) == -1) break;
496491

497492
path = path.substring(0, path.lastIndexOf(File.separatorChar));
498493
tempFile = new File(getProjectRoot(), path + OptionConstants.JAVA_FILE_EXTENSION);
@@ -885,9 +880,7 @@ private void helper(File file, List<File> accumulator) {
885880
accumulator.add(file);
886881
}
887882
}
888-
else if ( file.getName().endsWith(".class")){
889-
accumulator.add(file);
890-
}
883+
else if ( file.getName().endsWith(".class")) accumulator.add(file);
891884
}
892885
};
893886

@@ -1077,7 +1070,7 @@ public void cleanBuildDirectory() { }
10771070

10781071
public List<File> getClassFiles() { return new LinkedList<File>(); }
10791072

1080-
public String getCustomManifest(){ return null; }
1073+
public String getCustomManifest() { return null; }
10811074
public void setCustomManifest(String manifest) { }
10821075
}
10831076

@@ -4306,6 +4299,6 @@ public void setCustomManifest(String manifest){
43064299
_state.setProjectChanged(true);
43074300
_state.setCustomManifest(manifest);
43084301
}
4309-
public String getCustomManifest(){ return _state.getCustomManifest(); }
4302+
public String getCustomManifest() { return _state.getCustomManifest(); }
43104303
}
43114304

drjava/src/edu/rice/cs/drjava/model/DJError.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,18 +48,18 @@
4848
* @version $Id$
4949
*/
5050
public class DJError implements Comparable<DJError>, Serializable {
51-
private File _file;
51+
private volatile File _file;
5252

5353
/** zero-based line number. */
54-
private int _lineNumber;
54+
private volatile int _lineNumber;
5555

5656
/** zero-based column number. */
5757
private final int _startColumn;
5858
private final String _message;
5959
private final boolean _isWarning;
6060

6161
/** This boolean is true when the DJError does not have a location (lineNumber is -1). */
62-
private boolean _noLocation;
62+
private volatile boolean _noLocation;
6363

6464
/** Constructor.
6565
* @param file the file where the error occurred

drjava/src/edu/rice/cs/drjava/model/DummyGlobalModel.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -468,7 +468,7 @@ public String getMainClass() {
468468
throw new UnsupportedOperationException("Tried to call getMainClass on a Dummy");
469469
}
470470

471-
public File getMainClassContainingFile(){
471+
public File getMainClassContainingFile() {
472472
throw new UnsupportedOperationException("Tried to call getMainClass on a Dummy");
473473
}
474474

@@ -528,7 +528,7 @@ public List<OpenDefinitionsDocument> getOutOfSyncDocuments(List<OpenDefinitionsD
528528
throw new UnsupportedOperationException("Tried to call getOutOfSyncDocuments on a Dummy");
529529
}
530530

531-
public void cleanBuildDirectory(){
531+
public void cleanBuildDirectory() {
532532
throw new UnsupportedOperationException("Tried to call cleanBuildDirectory on a Dummy");
533533
}
534534

drjava/src/edu/rice/cs/drjava/model/GlobalModelTestCase.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ public void tearDown() throws Exception {
165165
protected void changeDocumentText(final String s, final OpenDefinitionsDocument doc) /*throws BadLocationException */{
166166
Utilities.invokeAndWait(new Runnable() {
167167
public void run() {
168-
try{
168+
try {
169169
doc.clear();
170170
assertLength(0, doc);
171171
doc.append(s, null);
@@ -967,8 +967,8 @@ public void updateCurrentLocationInDoc() { /* this event is not directly tested
967967

968968
public static class InteractionListener extends TestListener {
969969
private static final int WAIT_TIMEOUT = 20000; // time to wait for _interactionDone or _resetDone
970-
private CompletionMonitor _interactionDone;
971-
private CompletionMonitor _resetDone;
970+
private volatile CompletionMonitor _interactionDone;
971+
private volatile CompletionMonitor _resetDone;
972972

973973
private volatile int _lastExitStatus = -1;
974974

drjava/src/edu/rice/cs/drjava/model/compiler/CompilerErrorModel.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -82,19 +82,18 @@ public class CompilerErrorModel {
8282
private final int _numErrors;
8383

8484
/** The number of compile errors. Used for display purposes only.*/
85-
private int _numCompilerErrors;
85+
private volatile int _numCompilerErrors;
8686

8787
/** The number of compile warnings. Used for display purposes only.*/
88-
private int _numWarnings;
89-
88+
private volatile int _numWarnings;
9089

9190
/** Cached result of hasOnlyWarnings.
9291
* Three-state enum:
9392
* -1 => result has not been computed
9493
* 0 => false
9594
* 1 => true
9695
*/
97-
private int _onlyWarnings = -1;
96+
private volatile int _onlyWarnings = -1;
9897

9998
/** Used internally in building _positions. The file used as the index *must* be a canonical file, or else
10099
* errors won't always be associated with the right documents.
@@ -173,7 +172,7 @@ public CompilerErrorModel(DJError[] errors, GlobalModel model) {
173172

174173
_numWarnings = 0;
175174
_numCompilerErrors = 0;
176-
for (int i =0; i < errors.length; i++){
175+
for (int i =0; i < errors.length; i++) {
177176
if (errors[i].isWarning()) _numWarnings++;
178177
else _numCompilerErrors++;
179178
}

drjava/src/edu/rice/cs/drjava/model/compiler/DefaultCompilerModel.java

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -402,23 +402,19 @@ private List<File> _compileLanguageLevelsFiles(List<File> files, List<DJError> e
402402
File javaFile = new File(DrJavaFileUtils.getJavaForLLFile(fileName));
403403

404404
//checks if .dj? file has a matching .java file open in project. Eventually warns user (later on in code)
405-
if(files.contains(javaFile)){
406-
filesToBeClosed.add(javaFile);
405+
if (files.contains(javaFile)) filesToBeClosed.add(javaFile);
407406
// delete file later so closeFiles doesn't complain about missing files
408-
}
409-
else {
407+
else
410408
// Delete the stale .java file now (if it exists), a file with this name will subsequently be generated
411409
javaFile.delete();
412-
}
410+
413411
javaFileSet.add(javaFile);
414412
newFiles.add(javaFile);
415413
}
416-
else{
417-
javaFileSet.add(canonicalFile);
418-
}
414+
else javaFileSet.add(canonicalFile);
419415
}
420416

421-
for(File f: filesToBeClosed) {
417+
for (File f: filesToBeClosed) {
422418
if (files.contains(DrJavaFileUtils.getDJForJavaFile(f)) ||
423419
files.contains(DrJavaFileUtils.getDJ0ForJavaFile(f)) ||
424420
files.contains(DrJavaFileUtils.getDJ1ForJavaFile(f)) ||
@@ -427,7 +423,7 @@ private List<File> _compileLanguageLevelsFiles(List<File> files, List<DJError> e
427423
}
428424
}
429425

430-
if(!filesToBeClosed.isEmpty()){
426+
if (!filesToBeClosed.isEmpty()) {
431427
final JButton closeButton = new JButton(new AbstractAction("Close Files") {
432428
public void actionPerformed(ActionEvent e) {
433429
// no op, i.e. delete everything
@@ -699,12 +695,8 @@ public boolean accept(File dir, String name) {
699695
}
700696
}
701697

702-
703698
/** returns the LanguageLevelStackTraceMapper
704699
* @return the LanguageLevelStackTraceMapper
705700
* */
706-
public LanguageLevelStackTraceMapper getLLSTM(){
707-
return _LLSTM;
708-
}
709-
701+
public LanguageLevelStackTraceMapper getLLSTM() { return _LLSTM; }
710702
}

drjava/src/edu/rice/cs/drjava/model/compiler/LanguageLevelStackTraceMapper.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ public StackTraceElement[] replaceStackTrace(StackTraceElement[] ss, List<File>
137137

138138

139139
/** Clears the TreeMap cache */
140-
public void clearCache(){
140+
public void clearCache() {
141141
cache = new HashMap<String,TreeMap<Integer,Integer>>();
142142
}
143143

@@ -151,7 +151,7 @@ private boolean matches(File f, StackTraceElement s) {
151151
if (s.getFileName() == null) return false;
152152
OpenDefinitionsDocument d;
153153
try { d = aGModel.getDocumentForFile(f); }
154-
catch(java.io.IOException e){ return false; }
154+
catch(java.io.IOException e) { return false; }
155155

156156
String dn = d.getRawFile().getName();
157157

@@ -281,7 +281,7 @@ public TreeMap<Integer, Integer> ReadLanguageLevelLineBlockRev(File LLFile) {
281281
int djNum;
282282
int javaNum;
283283

284-
for(int i = 0; i < mapSize; i++){
284+
for(int i = 0; i < mapSize; i++) {
285285
if (temp.length() < 2) temp = readLLLineBlockHelper(bufReader);
286286
if (temp == null) break;
287287

drjava/src/edu/rice/cs/drjava/model/debug/jpda/JPDADebugger.java

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -731,7 +731,7 @@ public ArrayList<DebugWatchData> getWatches() throws DebugException {
731731
ArrayList<DebugStackData> frames = new ArrayList<DebugStackData>();
732732
// get a list of language level files whose line numbers need to be translated
733733
final List<File> files = new ArrayList<File>();
734-
for(OpenDefinitionsDocument odd: _model.getLLOpenDefinitionsDocuments()){ files.add(odd.getRawFile()); }
734+
for(OpenDefinitionsDocument odd: _model.getLLOpenDefinitionsDocuments()) { files.add(odd.getRawFile()); }
735735
for (StackFrame f : thread.frames()) {
736736
// map Java line numbers to LL line numbers
737737
String method = JPDAStackData.methodName(f);
@@ -764,7 +764,7 @@ public OpenDefinitionsDocument preloadDocument(Location location) {
764764
String fileName;
765765
try {
766766
final List<File> files = new ArrayList<File>();
767-
for(OpenDefinitionsDocument odd: _model.getLLOpenDefinitionsDocuments()){ files.add(odd.getRawFile()); }
767+
for(OpenDefinitionsDocument odd: _model.getLLOpenDefinitionsDocuments()) { files.add(odd.getRawFile()); }
768768
Location lll = getLLLocation(location, files);
769769

770770
fileName = lll.sourcePath();
@@ -783,7 +783,7 @@ public OpenDefinitionsDocument preloadDocument(Location location) {
783783
catch(AbsentInformationException e) {
784784
// No stored doc, look on the source root set (later, also the sourcepath)
785785
final List<File> files = new ArrayList<File>();
786-
for(OpenDefinitionsDocument odd: _model.getLLOpenDefinitionsDocuments()){ files.add(odd.getRawFile()); }
786+
for(OpenDefinitionsDocument odd: _model.getLLOpenDefinitionsDocuments()) { files.add(odd.getRawFile()); }
787787

788788
ReferenceType rt = location.declaringType();
789789
fileName = null;
@@ -858,7 +858,7 @@ public OpenDefinitionsDocument preloadDocument(Location location) {
858858
}
859859

860860
final List<File> files = new ArrayList<File>();
861-
for(OpenDefinitionsDocument odd: _model.getLLOpenDefinitionsDocuments()){ files.add(odd.getRawFile()); }
861+
for(OpenDefinitionsDocument odd: _model.getLLOpenDefinitionsDocuments()) { files.add(odd.getRawFile()); }
862862

863863
// map Java to LL line numbers using LanguageLevelStackTraceMapper
864864
while (i.hasNext()) {
@@ -1664,7 +1664,7 @@ private void _switchToSuspendedThread(BreakpointRequest request, boolean updateW
16641664
try {
16651665
if (currThread.frameCount() > 0) {
16661666
final List<File> files = new ArrayList<File>();
1667-
for(OpenDefinitionsDocument odd: _model.getLLOpenDefinitionsDocuments()){ files.add(odd.getRawFile()); }
1667+
for(OpenDefinitionsDocument odd: _model.getLLOpenDefinitionsDocuments()) { files.add(odd.getRawFile()); }
16681668
scrollToSource(getLLLocation(currThread.frame(0).location(), files));
16691669
}
16701670
}
@@ -1951,14 +1951,10 @@ public synchronized boolean contains(long id) {
19511951
}
19521952

19531953

1954-
/**
1955-
* Gets the LanguageLevelStackTraceMapper
1956-
* @return the LanguageLevelStackTraceMapper used by JPDADebugger
1957-
*/
1958-
public LanguageLevelStackTraceMapper getLLSTM(){
1959-
// use LLSTM from compiler model.
1960-
return _model.getCompilerModel().getLLSTM();
1961-
}
1954+
/** Gets the LanguageLevelStackTraceMapper
1955+
* @return the LanguageLevelStackTraceMapper used by JPDADebugger in the compiler model
1956+
*/
1957+
public LanguageLevelStackTraceMapper getLLSTM() { return _model.getCompilerModel().getLLSTM(); }
19621958

19631959
/** A Location that delegates to another location in all cases except for line number,
19641960
* source path and source name. */

0 commit comments

Comments
 (0)