Commit Graph

3245 Commits

Author SHA1 Message Date
Gary Gregory 1e57244dc1 Remove redundant semicolons. 2020-01-26 17:29:45 -05:00
Gary Gregory 9675e6c794 Remove unnecessary type casts. 2020-01-26 17:26:49 -05:00
Gary Gregory 1d26ffda93 Remove redundant generic type arguments. 2020-01-26 17:23:41 -05:00
Claude Warren 5639a5d790 Bloom filter documentation (#128)
* Added initial bloom filter code.  Added changed lang3 dependency from
test to compile in pom.xml

* added tests + made recommended changes.

* Updated documentation

* refactored ProtoBloomFilter added tests.

* Cleand up code and added tests

* Added CountingBloomFilter

* Fixed CountingBloomFilter issues

Fixed checkstyle and bug report issues

* Initial bloom filter collections checkin

* Added unit tests

* fixed test cases

* Extract BloomFilter as an interface

* added missing license info

* fixed Jacoco errors

* fixed names for so build picks up tests

* cleaned up Jacoco report for BloomNestedCollection

* removed unused code

* cleaned up and reformatted

* added javadoc

fixed issue with BloomNestedCollection detecting duplicates in an edge
case.

* fixed candidate testing bug

* Cleand up niggling report issues.

* fixed javadoc errors

* fixed javadoc for java 13 issue

* Second set of fixes.


* "package private for testing" for methods and properties.
* In "Builder":
** Field "hashes" made "final"
* removes some "Serializable" implementations.
* "StandardBloomFilter" made non non "final" fields final and changed
"final protected" to "final private".
* removed transient fields
* made Package name singular
* added javadocs for private and protected fields and methods.
* Occurrences of "bloom" replaced with "Bloom"

* removed checkstyle and findbugs exclusions

* Fixed method and class names

* Documentation updates

* Fixed checkstyle isses

Added BloomFilterConfiguration functions for estimation.

* added .checkstyle to eclipse ignore section.

* renamed test classes to match main class names

* Updated the documentation.

* Implemented requested changes.  Part of COLLECTIONS-728

Changed remaining "get" comments to "gets" etc.
Added final where possible and reasonable.
renamed enum Change to CHANGE
fixed missing javadoc links and missed name changes.
fixed ProtoBloomFilter hashCode
renamed CollectionStatistics to BloomCollectionStatistics
renamed CollectionConfiguration to BloomCollectionConfiguration
renamed BloomCollectionStatistics.getTxnCount() to getTransactionCount()

* Added final set of constructors and tests for them.

Cleaned up issues from Gilles Sadowski review

* fixes for Gilles Sadowski issues in BloomCollectionStatistics

* Update javadoc

* renamed match() -> matches() and inverseMatch() -> inverseMatches()

This follows the pattern set with the Object.equals() method name.

* added isFull() method to check if a bloom filter is full.

* Changed gate from StandardBloomFilter to BloomFilter

* renamed BloomCollectionX -> BloomFilterGatedX

specifically:
BloomCollectionConfiguration -> BloomFilterGatedConfiguraiton
BloomCollectionStatistics -> BloomFilterGatedStatistics

* Made the StandardBloomFilter(BitSet) constructor public

* removed extraneous build() methods from ProtoBloomFilter.Factory

* Added Use cases

* Initial cut

* changes for interface

* Changed to Hasher implementation

* Added missing files and removed Shape from some BloomFilter calls

* Added  @since 4.5 tags

* fixed javadoc

* fixed PMD errors

* Added tests and fixed sign extension issues

* changed to Byte constant

* made BloomFilter.verify*() non final

* Added remove(Hasher) for completeness

* Replaced private implementation of MurmurHash3 with commons-codec

* fixed typo

* Removed Hasher.Factory added HashFunction interface

* removed Usage.md

* made commons-codec dependency optional

* Improved performance of Iterator.

* renamed instance variable "md" as messageDigest.

* updated javadoc

* renamed Iter to Iterator and removed unused imports

* removed unused imports

* Made instance variables final.

Also fixed MD5 constructor to throw IllegalStateException if MD5 algo
can not be found.

* removed unused imports

* Updated javadoc.

* Added HashFunctionIdentity to replace HashFunctionName

Added test cases, updated java doc.
Renamed function implementations to reflect actual function.
Added comparators for HashFunctionIdentity

* fixed naming issues

* Updated javadoc

* fixed checkstyle issue

* Removed link that was causing problems in java 11+ javadoc

* changed HashFunctionIdentity.getProcess() to getProcessType()

* changed HashFunctionIdentity.getProcess() to getProcessType()

* Added package documentation

* Added BloomFilter interface and removed unnecessary methods

* updated tests and fixed issues

* Moved set operations to separate class and updated tests

* fixed FindBugs, PMD and Checkstyle errors

* fixed javadocs

* Added SetOperations and tests

* Added javadocs indicating optional commons-codec required

* Added another cosine test

* Updated to commons-codec 1.14

* fixed typos

* moved Hasher to o.a.c.c.b.hasher package

* extracted Shape.java and moved to o.a.c.c.b.hasher package

* Added javadoc and removed unused imports in testing code

* Added isEmpty() method to Hasher

* initial documentation

* updated to latest mathjax

* Fixed typographical issues
2020-01-26 12:16:54 -05:00
Gary Gregory d61b83be16 [COLLECTIONS-728] BloomFilter contribution. 2020-01-24 18:15:22 -05:00
Claude Warren 469c04b14c Initial bloom filter code contribution (#83)
* Added initial bloom filter code.  Added changed lang3 dependency from
test to compile in pom.xml

* added tests + made recommended changes.

* Updated documentation

* refactored ProtoBloomFilter added tests.

* Cleand up code and added tests

* Added CountingBloomFilter

* Fixed CountingBloomFilter issues

Fixed checkstyle and bug report issues

* Initial bloom filter collections checkin

* Added unit tests

* fixed test cases

* Extract BloomFilter as an interface

* added missing license info

* fixed Jacoco errors

* fixed names for so build picks up tests

* cleaned up Jacoco report for BloomNestedCollection

* removed unused code

* cleaned up and reformatted

* added javadoc

fixed issue with BloomNestedCollection detecting duplicates in an edge
case.

* fixed candidate testing bug

* Cleand up niggling report issues.

* fixed javadoc errors

* fixed javadoc for java 13 issue

* Second set of fixes.


* "package private for testing" for methods and properties.
* In "Builder":
** Field "hashes" made "final"
* removes some "Serializable" implementations.
* "StandardBloomFilter" made non non "final" fields final and changed
"final protected" to "final private".
* removed transient fields
* made Package name singular
* added javadocs for private and protected fields and methods.
* Occurrences of "bloom" replaced with "Bloom"

* removed checkstyle and findbugs exclusions

* Fixed method and class names

* Documentation updates

* Fixed checkstyle isses

Added BloomFilterConfiguration functions for estimation.

* added .checkstyle to eclipse ignore section.

* renamed test classes to match main class names

* Updated the documentation.

* Implemented requested changes.  Part of COLLECTIONS-728

Changed remaining "get" comments to "gets" etc.
Added final where possible and reasonable.
renamed enum Change to CHANGE
fixed missing javadoc links and missed name changes.
fixed ProtoBloomFilter hashCode
renamed CollectionStatistics to BloomCollectionStatistics
renamed CollectionConfiguration to BloomCollectionConfiguration
renamed BloomCollectionStatistics.getTxnCount() to getTransactionCount()

* Added final set of constructors and tests for them.

Cleaned up issues from Gilles Sadowski review

* fixes for Gilles Sadowski issues in BloomCollectionStatistics

* Update javadoc

* renamed match() -> matches() and inverseMatch() -> inverseMatches()

This follows the pattern set with the Object.equals() method name.

* added isFull() method to check if a bloom filter is full.

* Changed gate from StandardBloomFilter to BloomFilter

* renamed BloomCollectionX -> BloomFilterGatedX

specifically:
BloomCollectionConfiguration -> BloomFilterGatedConfiguraiton
BloomCollectionStatistics -> BloomFilterGatedStatistics

* Made the StandardBloomFilter(BitSet) constructor public

* removed extraneous build() methods from ProtoBloomFilter.Factory

* Added Use cases

* Initial cut

* changes for interface

* Changed to Hasher implementation

* Added missing files and removed Shape from some BloomFilter calls

* Added  @since 4.5 tags

* fixed javadoc

* fixed PMD errors

* Added tests and fixed sign extension issues

* changed to Byte constant

* made BloomFilter.verify*() non final

* Added remove(Hasher) for completeness

* Replaced private implementation of MurmurHash3 with commons-codec

* fixed typo

* Removed Hasher.Factory added HashFunction interface

* removed Usage.md

* made commons-codec dependency optional

* Improved performance of Iterator.

* renamed instance variable "md" as messageDigest.

* updated javadoc

* renamed Iter to Iterator and removed unused imports

* removed unused imports

* Made instance variables final.

Also fixed MD5 constructor to throw IllegalStateException if MD5 algo
can not be found.

* removed unused imports

* Updated javadoc.

* Added HashFunctionIdentity to replace HashFunctionName

Added test cases, updated java doc.
Renamed function implementations to reflect actual function.
Added comparators for HashFunctionIdentity

* fixed naming issues

* Updated javadoc

* fixed checkstyle issue

* Removed link that was causing problems in java 11+ javadoc

* changed HashFunctionIdentity.getProcess() to getProcessType()

* changed HashFunctionIdentity.getProcess() to getProcessType()

* Added package documentation

* Added BloomFilter interface and removed unnecessary methods

* updated tests and fixed issues

* Moved set operations to separate class and updated tests

* fixed FindBugs, PMD and Checkstyle errors

* fixed javadocs

* Added SetOperations and tests

* Added javadocs indicating optional commons-codec required

* Added another cosine test

* Updated to commons-codec 1.14

* fixed typos

* moved Hasher to o.a.c.c.b.hasher package

* extracted Shape.java and moved to o.a.c.c.b.hasher package

* Added javadoc and removed unused imports in testing code

* Added isEmpty() method to Hasher
2020-01-24 18:10:46 -05:00
Gary Gregory fde8c8618a [COLLECTIONS-744] Add
org.apache.commons.collections4.EnumerationUtils.asIterable(Enumeration).
2020-01-12 10:32:57 -05:00
Gary Gregory 22560c3077 [COLLECTIONS-780] Add
org.apache.commons.collections4.EnumerationUtils.asIterable(Enumeration).
2020-01-12 10:32:00 -05:00
Gary Gregory 45eee00385 Sort Sort methods. 2020-01-12 10:25:21 -05:00
Gary Gregory a963a123f7 Sort methods. 2020-01-12 10:17:05 -05:00
Gary Gregory de7cb0105b Javadoc: Add missing tags. 2020-01-11 20:15:31 -05:00
Bruno P. Kinoshita 64420e34cc [COLLECTIONS-697]: add missing changes.xml entry (ref #55) 2020-01-12 12:52:28 +13:00
Bruno P. Kinoshita 04c59168ba Update year in NOTICE.txt and changes.xml 2019->2020 2020-01-09 20:21:17 +13:00
Bruno P. Kinoshita 7b83356791 Merge branch 'pr-121'
This closes #121
2020-01-09 20:19:29 +13:00
Bruno P. Kinoshita ea190a8ae3 [COLLECTIONS-738]: add changes.xml entry 2020-01-09 20:19:05 +13:00
Pengyu Nie 888058b629 [COLLECTIONS-738]: Javadoc update in IterableUtils. 2020-01-09 20:19:16 +13:00
Pengyu Nie f6eba479b4 [COLLECTIONS-738]: Update JavaDoc of {IterableUtils,IteratorUtils}.find to clarify the parameter predicate must not be null. 2020-01-09 20:19:11 +13:00
Pengyu Nie 33428eb9eb [COLLECTIONS-738]: Remove the redundant assertNull in IterableUtilsTest.find. 2020-01-09 20:19:05 +13:00
Gary Gregory be28c1d647 Use Objects.requireNonNull() instead of custom check. Minor formatting. 2019-12-25 18:42:19 -05:00
Gary Gregory b901cfb655 Add GitHub Action build. 2019-12-25 10:27:20 -05:00
Gary Gregory 8d595f3840 Remove redundant generic spec. 2019-12-20 10:59:59 -05:00
Gary Gregory 5e4944286e Document empty block. 2019-12-20 10:58:58 -05:00
Gary Gregory 8308cff798 Remove unnecessary array creation for varargs. 2019-12-18 15:55:25 -05:00
Gary Gregory 45763ba694 Remove trailing white spaces on all lines. 2019-12-18 15:28:39 -05:00
Gary Gregory c7701470fe Fix links to release notes and update contents for 4.4 #127. 2019-12-18 15:21:00 -05:00
Dominik Stadler 7baad88e48 Fix links to release notes and update contents for 4.4 (#127)
* Fix link to release notes for 4.4

* Update release notes for 4.4 with actual changes

* Fix trailing blank
2019-12-18 14:58:48 -05:00
Gary Gregory fecfe442b5 [COLLECTIONS-739] Fix inconsistent @throws comments in DefaultedMap
#123.
2019-12-10 10:06:29 -05:00
Prodigysov b337febe27 [COLLECTIONS-739] Fix inconsistent @throws comments in DefaultedMap (#123)
* COLLECTIONS-739: Fix inconsistent @throws in DefaultedMap.

* COLLECTIONS-739: Change IllegalArgumentException to NullPointerException in DefaultedMap.defaultedMap, and update Javadoc correspondingly.

* COLLECTIONS-739: Add tests for factory methods in DefaultedMap.

* COLLECTIONS-739: Change null checking to use Objects.requireNonNull.
2019-12-10 10:02:37 -05:00
Gary Gregory dc1aca9ed9 Javadoc: Replace <code></code> HTML tags with Javadoc {@code} notation. 2019-12-09 23:08:03 -05:00
Gary Gregory 0eb36e1c78 Javadoc: Replace <code></code> HTML tags with Javadoc {@code} notation. 2019-12-09 22:03:10 -05:00
Gary Gregory 513ae545ee Use Objects#requireNonNull() instead of if-null-then-throw-NPE.
Use simple exception message, instead of mix of message formats.
2019-12-09 21:01:21 -05:00
Gary Gregory 212750768a [COLLECTIONS-740] Add missing @throws comment for
SwitchTransformer.switchTransformer. #124.
2019-12-09 18:02:49 -05:00
Prodigysov 152390a5a3 [COLLECTIONS-740] Add missing @throws comment for SwitchTransformer.switchTransformer. (#124)
* COLLECTIONS-740: Add missing @throws comment for SwitchTransformer.switchTransformer.

* COLLECTIONS-740: Fix inconsistency between Javadocs of TransformerUtils.switchTransformer and SwitchTransformer.switchTransformer.
2019-12-09 18:01:12 -05:00
Gary Gregory dd69cc72dc Merge branch 'master' of https://gitbox.apache.org/repos/asf/commons-collections.git 2019-12-09 14:39:31 -05:00
Gary Gregory e7d3a10392 Fix inconsistent @throws comments in ListOrderedSet #125. 2019-12-09 11:08:09 -05:00
Chen 45080bed99 Fix inconsistent @throws comments in ListOrderedSet (#125)
* Fix inconsistent @throws comments in ListOrderedSet

* Fix inconsistent @throws comments in MultiKey and update the test cases for them.
2019-12-09 11:06:51 -05:00
Gary Gregory 45b6865b59 [COLLECTIONS-734] Encountered an IllegalStateException while traversing
with Flat3Map.entrySet().

Closes #115. This is slightly modified patch from the PR.





















.
2019-12-05 11:12:44 -05:00
Chen f08623354e Make the code clearer (#119) 2019-11-26 08:35:33 -05:00
Gary Gregory 98293b24bd Merge branch 'master' of https://gitbox.apache.org/repos/asf/commons-collections.git 2019-11-23 17:24:56 -05:00
Gary Gregory 861df7a823 [test] org.easymock:easymock 4.0.2 -> 4.1. 2019-11-23 17:24:50 -05:00
Chen 92ec85a129 Typo fixed in TreeList. (#116) 2019-11-15 14:40:18 -05:00
Gary Gregory 4551c3df10 Add test cases in UnmodifiableMultiValuedMapTest; #102. 2019-11-03 19:02:29 -05:00
dota17 fbe9566e12 Add test cases in UnmodifiableMultiValuedMapTest (#102)
* Add test cases in UnmodifiableMultiValuedMapTest

* remove import * and comment empty code blocks
2019-11-03 19:02:04 -05:00
Gary Gregory 588b5f9abe Add test cases to ArrayListValuedHashMapTest; #106. 2019-11-03 19:01:17 -05:00
Gary Gregory c30586294f Merge branch 'master' of https://gitbox.apache.org/repos/asf/commons-collections.git 2019-11-03 19:00:50 -05:00
dota17 81adcf9238 Add test cases for ArrayListValuedHashMapTest (#106)
* Add test cases for ArrayListValuedHashMapTest to cover ArrayListValuedHashMap and AbstractListValuedMap

* remove import * in java file
2019-11-03 19:00:35 -05:00
Gary Gregory f7e2465c1c Add junit for getWithNull and subList in LazyListTest; #103. 2019-11-03 18:59:39 -05:00
dota17 b78b81bc46 Add junit for getWithNull and subList in the LazyListTest. (#103)
* Add junit for getWithNull and subList in the LazyListTest.

* Add junit for add, addAll, remove, subList, isFull and maxSize in the FixedSizeListTest.

* Add junit for  subList in the PredicatedListTest.

* Add junit for  subList in the TransformedListTest.

* Remove the kinds of //---... lines.
2019-11-03 18:58:39 -05:00
Gary Gregory b398b82c7f Merge branch 'master' of https://gitbox.apache.org/repos/asf/commons-collections.git 2019-11-01 11:45:06 -04:00
Gary Gregory 8c563f2b45 Remove the parentheses in the error message in CircularFifoQueue #107. 2019-11-01 11:45:01 -04:00