CPD Results
The following document contains the results of PMD's CPD 7.7.0.
Duplications
| File | Line |
|---|---|
| info/sixcorners/closer/Closer.java | 78 |
| info/sixcorners/closer/ConcurrentCloser.java | 119 |
}
/**
* Closes the associated {@link AutoCloseable}
*
* <p>Repeated calls will do nothing.
*/
@Override
public void close() {
compact(this, 1);
justClose();
}
/** Calls {@link #close} */
@Override
public void run() {
close();
}
}
/**
* Remove closed {@link Handle}s
*
* @param startWith {@link Handle} to start with
* @param modLimit number of modifications to make
*/
public static void compact(Handle startWith, int modLimit) {
Handle prev = startWith;
for (Handle handle = startWith.next; handle != null; handle = handle.next) {
if (handle.closeable == null) continue;
if (prev.next != handle) prev.next = handle;
if (modLimit-- <= 0) break;
prev = handle;
}
}
/**
* Remove closed {@link Handle}s
*
* @param startWith {@link Handle} to start with
*/
public static void compact(Handle startWith) {
compact(startWith, Integer.MAX_VALUE);
}
/** Remove closed {@link Handle}s */
public void compact() {
if (head != null) compact(head);
}
int size() {
int i = 0;
for (Handle handle = head; handle != null; handle = handle.next) i++;
return i;
} | |
