@@ -55,8 +55,10 @@ public class PurgeCommand extends FilterOptions implements Runnable{
5555 public void run () {
5656
5757 if (!cachePath .exists () || !cachePath .isDirectory ()){
58- System .err .printf ("Cache path %1$s does not exist!" , cachePath .toString ());
59- System .exit (-1 );
58+ getStdErr ().printf ("Cache path %1$s does not exist!" , cachePath .toString ());
59+ if (System .err .equals (getStdErr ())) {
60+ System .exit (-1 );
61+ }
6062 }
6163
6264 analyseCache (cachePath , ageInDays );
@@ -92,7 +94,7 @@ private void listFiles(File parentFile) {
9294 FileTime time = attrs .lastAccessTime ();
9395 lastAccessTime = time .toMillis ();
9496 } catch (Exception e ) {
95- System . err .println ("!!Failed to get last access time for: " + file .toString ());
97+ getStdErr () .println ("!!Failed to get last access time for: " + file .toString ());
9698 }
9799
98100 this .fileCounter ++;
@@ -104,7 +106,7 @@ private void listFiles(File parentFile) {
104106 result .process (file .toPath ());
105107 }
106108 }
107- System . err .print ("Processing files: " + this .fileCounter + "\r " );
109+ getStdErr () .print ("Processing files: " + this .fileCounter + "\r " );
108110 } else if (file .isDirectory ()) {
109111 listFiles (file );
110112 }
@@ -114,13 +116,15 @@ private void listFiles(File parentFile) {
114116 private void verifyAndDeleteFromCache () {
115117
116118 if (this .result .getFileList ().size () == 0 ) {
117- System .err .println ("No files to remove. Exiting." );
118- System .exit (0 );
119+ getStdErr ().println ("No files to remove. Exiting." );
120+ if (System .err .equals (getStdErr ())) {
121+ System .exit (0 );
122+ }
119123 }
120124
121125 if (!noVerification ) {
122126 Scanner user_input = new Scanner (System .in );
123- System . err .print ("Remove files from cache? [y/n]:" );
127+ getStdErr () .print ("Remove files from cache? [y/n]:" );
124128 while (true ) {
125129 String answer = user_input .next ().trim ().toLowerCase ();
126130
@@ -130,10 +134,10 @@ private void verifyAndDeleteFromCache() {
130134 System .exit (0 );
131135 }
132136 }
133- System . err .println ();
137+ getStdErr () .println ();
134138 }
135139
136- System . err .println ("Removing files from cache at " + this .cachePath );
140+ getStdErr () .println ("Removing files from cache at " + this .cachePath );
137141
138142 List <String > fileNames = this .result .getFileList ();
139143 int fileRemovalCounter = 0 ;
@@ -143,39 +147,38 @@ private void verifyAndDeleteFromCache() {
143147 File fileToDelete = new File (cachePath , filename );
144148
145149 if (verbose ) {
146- System . err .println ("Removing: " + filename + extra );
150+ getStdErr () .println ("Removing: " + filename + extra );
147151 }
148152
149153 if (!dryRun ) {
150154 try {
151155 if (!fileToDelete .delete ()) {
152- System . err .println ("Failed to delete file: " + filename );
156+ getStdErr () .println ("Failed to delete file: " + filename );
153157 }
154158 fileRemovalCounter ++;
155159 } catch (Exception e ) {
156- System . err .println ("An error occurred when deleting file: " + filename );
157- System . err .println (e .getMessage ());
160+ getStdErr () .println ("An error occurred when deleting file: " + filename );
161+ getStdErr () .println (e .getMessage ());
158162 }
159163 } else {
160164 fileRemovalCounter ++;
161165 }
162166 }
163167
164- System .err .printf ("Removed %1$d from cache%2$s%n" , fileRemovalCounter , extra );
165-
168+ getStdErr ().printf ("Removed %1$d from cache%2$s%n" , fileRemovalCounter , extra );
166169 }
167170
168171 private void displayResult () {
169- System . err .println ("Processed files: " + this .fileCounter + " " );
170- System . err .println ("Files to remove: " + result .getFileList ().size ());
172+ getStdErr () .println ("Processed files: " + this .fileCounter + " " );
173+ getStdErr () .println ("Files to remove: " + result .getFileList ().size ());
171174
172175 if (result .getFileList ().size () > 0 ) {
173- System . err .println ("Summary by extension:" );
176+ getStdErr () .println ("Summary by extension:" );
174177 Map <String , Integer > extensionMap = result .getExtensionCountMap ();
175178 for (Map .Entry <String , Integer > entry : extensionMap .entrySet ()) {
176- System . err .printf ("\t %1$s\t %2$d%n" , entry .getKey (), entry .getValue ());
179+ getStdErr () .printf ("\t %1$s\t %2$d%n" , entry .getKey (), entry .getValue ());
177180 }
178- System . err .println ();
181+ getStdErr () .println ();
179182 }
180183 }
181184}
0 commit comments