Hi Duncan.
Can we really say that "RandomStringBuilder instances
are _immutable_ [...] if using the default random number
generator"?
Calling "nextInt" on the instance returned by
ThreadLocalRandom.current()
does change some internal state...
[IOW, unless I'm missing something, I think that "immutable"
should not be mentioned at all in this Javadoc.]
Regards,
Gilles
On Sat, 3 Jun 2017 06:03:05 +0000 (UTC), djo...@apache.org wrote:
Repository: commons-text
Updated Branches:
refs/heads/master ebb0cbe8c -> d04b0f6ff
Correct RandomStringGenerator description of thread
safety/immutability
The thread safety and immutability of RandomStringGenerator is
dependent
upon the external source of randomness, if set. Updated the Javadocs
to
reflect this.
Fixes: TEXT-84
Project: http://git-wip-us.apache.org/repos/asf/commons-text/repo
Commit:
http://git-wip-us.apache.org/repos/asf/commons-text/commit/d04b0f6f
Tree:
http://git-wip-us.apache.org/repos/asf/commons-text/tree/d04b0f6f
Diff:
http://git-wip-us.apache.org/repos/asf/commons-text/diff/d04b0f6f
Branch: refs/heads/master
Commit: d04b0f6ff469c1674d251c542028697db3ca48af
Parents: ebb0cbe
Author: duncan <dun...@wortharead.com>
Authored: Sat Jun 3 07:03:18 2017 +0100
Committer: duncan <dun...@wortharead.com>
Committed: Sat Jun 3 07:03:18 2017 +0100
----------------------------------------------------------------------
src/changes/changes.xml | 1
+
.../java/org/apache/commons/text/RandomStringGenerator.java | 5
++++-
2 files changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-text/blob/d04b0f6f/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index d3cc0df..7b65a6d 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -46,6 +46,7 @@ The <action> type attribute can be
add,update,fix,remove.
<body>
<release version="1.2" date="tbd" description="tbd">
+ <action issue="TEXT-84" type="update"
dev="djones">RandomStringGenerator claims to be immutable, but
isn't</action>
</release>
<release version="1.1" date="2017-05-23" description="Release
1.1">
http://git-wip-us.apache.org/repos/asf/commons-text/blob/d04b0f6f/src/main/java/org/apache/commons/text/RandomStringGenerator.java
----------------------------------------------------------------------
diff --git
a/src/main/java/org/apache/commons/text/RandomStringGenerator.java
b/src/main/java/org/apache/commons/text/RandomStringGenerator.java
index 6aa6806..58ebfb8 100644
---
a/src/main/java/org/apache/commons/text/RandomStringGenerator.java
+++
b/src/main/java/org/apache/commons/text/RandomStringGenerator.java
@@ -46,7 +46,10 @@ import org.apache.commons.lang3.Validate;
* String randomLetters = generator.generate(20);
* </pre>
* <p>
- * {@code RandomStringBuilder} instances are immutable and
thread-safe.
+ * {@code RandomStringBuilder} instances are immutable and
thread-safe if using the
+ * default random number generator (RNG). If a custom RNG is set by
calling the method
+ * {@link Builder#usingRandom(TextRandomProvider)
Builder.usingRandom(TextRandomProvider)}, thread-safety
+ * and immutability must be ensured externally.
* </p>
* @since 1.1
*/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org