Skip to content

Commit 6633728

Browse files
author
Niall Pemberton
committed
IO-120 Improve file filter toString() methods
git-svn-id: https://svn.apache.org/repos/asf/jakarta/commons/proper/io/trunk@539231 13f79535-47bb-0310-9956-ffa450edef68
1 parent 15e3a2d commit 6633728

11 files changed

Lines changed: 178 additions & 1 deletion

src/java/org/apache/commons/io/filefilter/AbstractFileFilter.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,4 +53,15 @@ public boolean accept(File dir, String name) {
5353
return accept(new File(dir, name));
5454
}
5555

56+
/**
57+
* Provide a String representaion of this file filter.
58+
*
59+
* @return a String representaion
60+
*/
61+
public String toString() {
62+
String name = getClass().getName();
63+
int period = name.lastIndexOf('.');
64+
return (period > 0 ? name.substring(period + 1) : name);
65+
}
66+
5667
}

src/java/org/apache/commons/io/filefilter/AgeFileFilter.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,4 +137,13 @@ public boolean accept(File file) {
137137
return acceptOlder ? !newer : newer;
138138
}
139139

140+
/**
141+
* Provide a String representaion of this file filter.
142+
*
143+
* @return a String representaion
144+
*/
145+
public String toString() {
146+
String condition = acceptOlder ? "<=" : ">";
147+
return super.toString() + "(" + condition + cutoff + ")";
148+
}
140149
}

src/java/org/apache/commons/io/filefilter/AndFileFilter.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,4 +141,26 @@ public boolean accept(final File file, final String name) {
141141
return true;
142142
}
143143

144+
/**
145+
* Provide a String representaion of this file filter.
146+
*
147+
* @return a String representaion
148+
*/
149+
public String toString() {
150+
StringBuffer buffer = new StringBuffer();
151+
buffer.append(super.toString());
152+
buffer.append("(");
153+
if (fileFilters != null) {
154+
for (int i = 0; i < fileFilters.size(); i++) {
155+
if (i > 0) {
156+
buffer.append(",");
157+
}
158+
Object filter = fileFilters.get(i);
159+
buffer.append(filter == null ? "null" : filter.toString());
160+
}
161+
}
162+
buffer.append(")");
163+
return buffer.toString();
164+
}
165+
144166
}

src/java/org/apache/commons/io/filefilter/DelegateFileFilter.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,5 +87,15 @@ public boolean accept(File dir, String name) {
8787
return super.accept(dir, name);
8888
}
8989
}
90+
91+
/**
92+
* Provide a String representaion of this file filter.
93+
*
94+
* @return a String representaion
95+
*/
96+
public String toString() {
97+
String delegate = (fileFilter != null ? fileFilter.toString() : filenameFilter.toString());
98+
return super.toString() + "(" + delegate.toString() + ")";
99+
}
90100

91101
}

src/java/org/apache/commons/io/filefilter/NameFileFilter.java

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,4 +166,25 @@ public boolean accept(File file, String name) {
166166
return false;
167167
}
168168

169+
/**
170+
* Provide a String representaion of this file filter.
171+
*
172+
* @return a String representaion
173+
*/
174+
public String toString() {
175+
StringBuffer buffer = new StringBuffer();
176+
buffer.append(super.toString());
177+
buffer.append("(");
178+
if (names != null) {
179+
for (int i = 0; i < names.length; i++) {
180+
if (i > 0) {
181+
buffer.append(",");
182+
}
183+
buffer.append(names[i]);
184+
}
185+
}
186+
buffer.append(")");
187+
return buffer.toString();
188+
}
189+
169190
}

src/java/org/apache/commons/io/filefilter/NotFileFilter.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,5 +64,14 @@ public boolean accept(File file) {
6464
public boolean accept(File file, String name) {
6565
return ! filter.accept(file, name);
6666
}
67+
68+
/**
69+
* Provide a String representaion of this file filter.
70+
*
71+
* @return a String representaion
72+
*/
73+
public String toString() {
74+
return super.toString() + "(" + filter.toString() + ")";
75+
}
6776

6877
}

src/java/org/apache/commons/io/filefilter/OrFileFilter.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,4 +135,26 @@ public boolean accept(final File file, final String name) {
135135
return false;
136136
}
137137

138+
/**
139+
* Provide a String representaion of this file filter.
140+
*
141+
* @return a String representaion
142+
*/
143+
public String toString() {
144+
StringBuffer buffer = new StringBuffer();
145+
buffer.append(super.toString());
146+
buffer.append("(");
147+
if (fileFilters != null) {
148+
for (int i = 0; i < fileFilters.size(); i++) {
149+
if (i > 0) {
150+
buffer.append(",");
151+
}
152+
Object filter = fileFilters.get(i);
153+
buffer.append(filter == null ? "null" : filter.toString());
154+
}
155+
}
156+
buffer.append(")");
157+
return buffer.toString();
158+
}
159+
138160
}

src/java/org/apache/commons/io/filefilter/PrefixFileFilter.java

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,5 +120,26 @@ public boolean accept(File file, String name) {
120120
}
121121
return false;
122122
}
123+
124+
/**
125+
* Provide a String representaion of this file filter.
126+
*
127+
* @return a String representaion
128+
*/
129+
public String toString() {
130+
StringBuffer buffer = new StringBuffer();
131+
buffer.append(super.toString());
132+
buffer.append("(");
133+
if (prefixes != null) {
134+
for (int i = 0; i < prefixes.length; i++) {
135+
if (i > 0) {
136+
buffer.append(",");
137+
}
138+
buffer.append(prefixes[i]);
139+
}
140+
}
141+
buffer.append(")");
142+
return buffer.toString();
143+
}
123144

124145
}

src/java/org/apache/commons/io/filefilter/SizeFileFilter.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,4 +89,14 @@ public boolean accept(File file) {
8989
return acceptLarger ? !smaller : smaller;
9090
}
9191

92+
/**
93+
* Provide a String representaion of this file filter.
94+
*
95+
* @return a String representaion
96+
*/
97+
public String toString() {
98+
String condition = acceptLarger ? ">=" : "<";
99+
return super.toString() + "(" + condition + size + ")";
100+
}
101+
92102
}

src/java/org/apache/commons/io/filefilter/SuffixFileFilter.java

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,5 +121,26 @@ public boolean accept(File file, String name) {
121121
}
122122
return false;
123123
}
124+
125+
/**
126+
* Provide a String representaion of this file filter.
127+
*
128+
* @return a String representaion
129+
*/
130+
public String toString() {
131+
StringBuffer buffer = new StringBuffer();
132+
buffer.append(super.toString());
133+
buffer.append("(");
134+
if (suffixes != null) {
135+
for (int i = 0; i < suffixes.length; i++) {
136+
if (i > 0) {
137+
buffer.append(",");
138+
}
139+
buffer.append(suffixes[i]);
140+
}
141+
}
142+
buffer.append(")");
143+
return buffer.toString();
144+
}
124145

125146
}

0 commit comments

Comments
 (0)