src/main/java/com/workplacesystems/utilsj/collections/decorators/SynchronizedFilterableCollection.java
public FilterableCollection<E> filteredCollection(final Filter<? super E> filter) {
        return SyncUtils.synchronizeRead(lock, new Callback<FilterableCollection<E>>() {
            @Override
            protected void doAction() {
                FilterableCollection<E> _col = getFilterableCollection().filteredCollection(filter);
                _return(new SynchronizedFilterableCollection<E>(_col, lock));
            }
        });
    }
public FilterableCollection<E> filteredCollection(final Filter<? super E> filter) {
        return SyncUtils.synchronizeRead(lock, new Callback<FilterableCollection<E>>() {
            @Override
            protected void doAction() {
                FilterableCollection<E> _col = getFilterableCollection().filteredCollection(filter);
                _return(new SynchronizedFilterableCollection<E>(_col, lock));
            }
        });
    }
-----------------------------------------------------------------------