diff --git a/.mvn/extensions.xml b/.mvn/extensions.xml
index 092d9a6022ad..adfffe5c7097 100644
--- a/.mvn/extensions.xml
+++ b/.mvn/extensions.xml
@@ -25,7 +25,7 @@ xsi:schemaLocation="http://maven.apache.org/EXTENSIONS/1.1.0 https://maven.apach
com.gradle
develocity-maven-extension
- 1.22.1
+ 1.22.2
com.gradle
diff --git a/pom.xml b/pom.xml
index cdbc6b0ea7a8..d9516f4e3e26 100644
--- a/pom.xml
+++ b/pom.xml
@@ -62,7 +62,7 @@
by jetty is referenced in its mod files. When upgrading Jetty, check the version of SF4J used and set the
version here. -->
2.0.13
- 4.1.113.Final
+ 4.1.114.Final
5.6.15.Final
3.4.0
1.4.3
diff --git a/xwiki-platform-core/pom.xml b/xwiki-platform-core/pom.xml
index d14fb99f50ed..12d6a5a6335f 100644
--- a/xwiki-platform-core/pom.xml
+++ b/xwiki-platform-core/pom.xml
@@ -265,7 +265,7 @@
org.codehaus.gmavenplus
gmavenplus-plugin
- 3.0.2
+ 4.0.1
set-system-properties-file
diff --git a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-test/xwiki-platform-appwithinminutes-test-docker/src/test/it/org/xwiki/appwithinminutes/test/ui/DocumentFieldsIT.java b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-test/xwiki-platform-appwithinminutes-test-docker/src/test/it/org/xwiki/appwithinminutes/test/ui/DocumentFieldsIT.java
index 405356a4035a..4eae2a2ca11a 100644
--- a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-test/xwiki-platform-appwithinminutes-test-docker/src/test/it/org/xwiki/appwithinminutes/test/ui/DocumentFieldsIT.java
+++ b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-test/xwiki-platform-appwithinminutes-test-docker/src/test/it/org/xwiki/appwithinminutes/test/ui/DocumentFieldsIT.java
@@ -59,7 +59,7 @@
"xwikiPropertiesAdditionalProperties=test.prchecker.excludePattern=.*:AppWithinMinutes\\.(ClassEditSheet|DynamicMessageTool|LiveTableEditSheet)"})
class DocumentFieldsIT
{
- private String appName = RandomStringUtils.randomAlphabetic(6);
+ private String appName = RandomStringUtils.secure().nextAlphabetic(6);
@BeforeAll
static void beforeAll(TestUtils setup)
diff --git a/xwiki-platform-core/xwiki-platform-container/xwiki-platform-container-servlet/src/main/java/org/xwiki/container/servlet/filters/SavedRequestManager.java b/xwiki-platform-core/xwiki-platform-container/xwiki-platform-container-servlet/src/main/java/org/xwiki/container/servlet/filters/SavedRequestManager.java
index 30e499273dfe..9c62160c4367 100644
--- a/xwiki-platform-core/xwiki-platform-container/xwiki-platform-container-servlet/src/main/java/org/xwiki/container/servlet/filters/SavedRequestManager.java
+++ b/xwiki-platform-core/xwiki-platform-container/xwiki-platform-container-servlet/src/main/java/org/xwiki/container/servlet/filters/SavedRequestManager.java
@@ -68,7 +68,7 @@ public static class SavedRequest implements Serializable
@SuppressWarnings("unchecked")
public SavedRequest(HttpServletRequest request)
{
- this.parameters = new HashMap(request.getParameterMap());
+ this.parameters = new HashMap<>(request.getParameterMap());
this.requestUrl = request.getRequestURL().toString();
}
@@ -166,7 +166,7 @@ public static String saveRequest(HttpServletRequest request)
Map savedRequests =
(Map) session.getAttribute(getSavedRequestKey());
if (savedRequests == null) {
- savedRequests = new HashMap();
+ savedRequests = new HashMap<>();
session.setAttribute(getSavedRequestKey(), savedRequests);
}
// Save the request data
@@ -174,7 +174,7 @@ public static String saveRequest(HttpServletRequest request)
// Generate a random key to identify this request
String key;
do {
- key = RandomStringUtils.secure().randomAlphanumeric(8);
+ key = RandomStringUtils.secure().nextAlphanumeric(8);
} while (savedRequests.containsKey(key));
// Store the saved request
savedRequests.put(key, savedRequest);
diff --git a/xwiki-platform-core/xwiki-platform-eventstream/xwiki-platform-eventstream-api/src/main/java/org/xwiki/eventstream/internal/DefaultEventStore.java b/xwiki-platform-core/xwiki-platform-eventstream/xwiki-platform-eventstream-api/src/main/java/org/xwiki/eventstream/internal/DefaultEventStore.java
index 243afb30de45..9611c79b43ff 100644
--- a/xwiki-platform-core/xwiki-platform-eventstream/xwiki-platform-eventstream-api/src/main/java/org/xwiki/eventstream/internal/DefaultEventStore.java
+++ b/xwiki-platform-core/xwiki-platform-eventstream/xwiki-platform-eventstream-api/src/main/java/org/xwiki/eventstream/internal/DefaultEventStore.java
@@ -394,7 +394,7 @@ private String generateEventId(Event event, ExecutionContext context)
}
final String id =
- String.format("%d-%d-%s", hash, event.getDate().getTime(), RandomStringUtils.randomAlphanumeric(8));
+ String.format("%d-%d-%s", hash, event.getDate().getTime(), RandomStringUtils.secure().nextAlphanumeric(8));
if (context != null && context.getProperty(GROUP_ID_CONTEXT_KEY) == null) {
context.setProperty(GROUP_ID_CONTEXT_KEY, id);
}
diff --git a/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/XWiki.java b/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/XWiki.java
index 780d6f2b9c6f..68bb8e850a12 100644
--- a/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/XWiki.java
+++ b/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/XWiki.java
@@ -4102,7 +4102,7 @@ public void sendValidationEmail(String xwikiname, String password, String email,
public String generateRandomString(int size)
{
- return RandomStringUtils.randomAlphanumeric(size);
+ return RandomStringUtils.secure().nextAlphanumeric(size);
}
public String generateValidationKey(int size)
diff --git a/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/export/html/HtmlPackager.java b/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/export/html/HtmlPackager.java
index 5f34881b0937..728fd2475197 100644
--- a/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/export/html/HtmlPackager.java
+++ b/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/export/html/HtmlPackager.java
@@ -360,7 +360,7 @@ public void export(XWikiContext context) throws IOException, XWikiException
context.setFinished(true);
File dir = this.environment.getTemporaryDirectory();
- File tempdir = new File(dir, RandomStringUtils.randomAlphanumeric(8));
+ File tempdir = new File(dir, RandomStringUtils.secure().nextAlphanumeric(8));
tempdir.mkdirs();
try {
diff --git a/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/pdf/impl/PdfExportImpl.java b/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/pdf/impl/PdfExportImpl.java
index b4d86b793d54..0d987d0647c4 100644
--- a/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/pdf/impl/PdfExportImpl.java
+++ b/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/pdf/impl/PdfExportImpl.java
@@ -146,7 +146,7 @@ public void export(XWikiDocument doc, OutputStream out, ExportType type, XWikiCo
// would also need to get the translations and set them too.
File dir = this.environment.getTemporaryDirectory();
- File tempdir = new File(dir, RandomStringUtils.randomAlphanumeric(8));
+ File tempdir = new File(dir, RandomStringUtils.secure().nextAlphanumeric(8));
try {
FileUtils.forceMkdir(tempdir);
} catch (IOException e) {
diff --git a/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/stats/impl/StatsUtil.java b/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/stats/impl/StatsUtil.java
index 791e37f82908..2cc2c94d7317 100644
--- a/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/stats/impl/StatsUtil.java
+++ b/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/stats/impl/StatsUtil.java
@@ -641,7 +641,7 @@ protected static VisitStats findVisitByIPUA(String uniqueID, XWikiContext contex
*/
protected static Cookie addCookie(XWikiContext context)
{
- Cookie cookie = new Cookie(COOKPROP_VISITID, RandomStringUtils.randomAlphanumeric(32).toUpperCase());
+ Cookie cookie = new Cookie(COOKPROP_VISITID, RandomStringUtils.secure().nextAlphanumeric(32).toUpperCase());
cookie.setPath("/");
int time = (int) (getCookieExpirationDate().getTime() - (new Date()).getTime()) / 1000;
diff --git a/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/web/Utils.java b/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/web/Utils.java
index 1ecf2509d92e..88a4f843d766 100644
--- a/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/web/Utils.java
+++ b/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/web/Utils.java
@@ -867,7 +867,7 @@ public static String createPlaceholder(String value, XWikiContext context)
Map renderingKeys = (Map) context.get(PLACEHOLDERS_CONTEXT_KEY);
String key;
do {
- key = "KEY" + RandomStringUtils.randomAlphanumeric(10) + "KEY";
+ key = "KEY" + RandomStringUtils.secure().nextAlphanumeric(10) + "KEY";
} while (renderingKeys.containsKey(key));
renderingKeys.put(key, value);
diff --git a/xwiki-platform-core/xwiki-platform-rendering/xwiki-platform-rendering-macros/xwiki-platform-rendering-macro-include/src/test/java/org/xwiki/rendering/internal/macro/include/IncludeMacroTest.java b/xwiki-platform-core/xwiki-platform-rendering/xwiki-platform-rendering-macros/xwiki-platform-rendering-macro-include/src/test/java/org/xwiki/rendering/internal/macro/include/IncludeMacroTest.java
index 6b1045543bd9..2b446a631965 100644
--- a/xwiki-platform-core/xwiki-platform-rendering/xwiki-platform-rendering-macros/xwiki-platform-rendering-macro-include/src/test/java/org/xwiki/rendering/internal/macro/include/IncludeMacroTest.java
+++ b/xwiki-platform-core/xwiki-platform-rendering/xwiki-platform-rendering-macros/xwiki-platform-rendering-macro-include/src/test/java/org/xwiki/rendering/internal/macro/include/IncludeMacroTest.java
@@ -103,9 +103,9 @@
@AllComponents(excludes = {CurrentMacroEntityReferenceResolver.class, DefaultAuthorizationManager.class})
class IncludeMacroTest
{
- private final static DocumentReference INCLUDER_AUHOR = new DocumentReference("wiki", "XWiki", "includer");
+ private final static DocumentReference INCLUDER_AUTHOR = new DocumentReference("wiki", "XWiki", "includer");
- private final static DocumentReference INCLUDED_AUHOR = new DocumentReference("wiki", "XWiki", "included");
+ private final static DocumentReference INCLUDED_AUTHOR = new DocumentReference("wiki", "XWiki", "included");
@InjectComponentManager
private MockitoComponentManager componentManager;
@@ -151,7 +151,7 @@ public void setUp() throws Exception
this.includeMacro = this.componentManager.getInstance(Macro.class, "include");
this.rendererFactory = this.componentManager.getInstance(PrintRendererFactory.class, "event/1.0");
- when(this.dab.getCurrentAuthorReference()).thenReturn(INCLUDER_AUHOR);
+ when(this.dab.getCurrentAuthorReference()).thenReturn(INCLUDER_AUTHOR);
// Put a fake XWiki context on the execution context.
Execution execution = this.componentManager.getInstance(Execution.class);
@@ -189,7 +189,7 @@ void executeWithPRAuthors() throws Exception
+ "endDocument";
// @formatter:on
- when(this.authorizationManager.hasAccess(Right.PROGRAM, INCLUDED_AUHOR, null)).thenReturn(true);
+ when(this.authorizationManager.hasAccess(Right.PROGRAM, INCLUDED_AUTHOR, null)).thenReturn(true);
List blocks = runIncludeMacro(Context.CURRENT, "word", false);
@@ -329,7 +329,7 @@ void executeWithCurrentContextShowsVelocityMacrosAreShared() throws Exception
+ "endDocument";
// @formatter:on
- when(this.authorizationManager.hasAccess(Right.PROGRAM, INCLUDED_AUHOR, null)).thenReturn(true);
+ when(this.authorizationManager.hasAccess(Right.PROGRAM, INCLUDED_AUTHOR, null)).thenReturn(true);
// We verify that a Velocity macro set in the including page is seen in the included page.
List blocks = runIncludeMacroWithPreVelocity(Context.CURRENT, "#macro(testmacro)#end",
@@ -407,7 +407,8 @@ void adaptIdsOfIncludedHeadingsAndImages() throws Exception
{
// @formatter:off
String expected = "beginDocument\n"
- + "beginMetaData [[base]=[includedWiki:includedSpace.includedPage][source]=[includedWiki:includedSpace.includedPage][syntax]=[XWiki 2.0]]\n"
+ + "beginMetaData [[base]=[includedWiki:includedSpace.includedPage][source]="
+ + "[includedWiki:includedSpace.includedPage][syntax]=[XWiki 2.0]]\n"
+ "beginSection\n"
+ "beginHeader [1, HHeading-1]\n"
+ "onWord [Heading]\n"
@@ -416,7 +417,8 @@ void adaptIdsOfIncludedHeadingsAndImages() throws Exception
+ "onImage [Typed = [false] Type = [attach] Reference = [test.png]] [true] [Itest.png-1]\n"
+ "endParagraph\n"
+ "endSection\n"
- + "endMetaData [[base]=[includedWiki:includedSpace.includedPage][source]=[includedWiki:includedSpace.includedPage][syntax]=[XWiki 2.0]]\n"
+ + "endMetaData [[base]=[includedWiki:includedSpace.includedPage][source]="
+ + "[includedWiki:includedSpace.includedPage][syntax]=[XWiki 2.0]]\n"
+ "endDocument";
// @formatter:on
@@ -631,7 +633,7 @@ void executeWhenExcludeFirstHeadingTrueAndSectionSpecifiedAndHeadingIsFirstBlock
when(this.dab.getCurrentDocumentReference())
.thenReturn(new DocumentReference("wiki", "Space", "IncludingPage"));
- when(this.authorizationManager.hasAccess(Right.PROGRAM, INCLUDED_AUHOR, null)).thenReturn(true);
+ when(this.authorizationManager.hasAccess(Right.PROGRAM, INCLUDED_AUTHOR, null)).thenReturn(true);
List blocks = this.includeMacro.execute(parameters, null, macroContext);
@@ -740,7 +742,7 @@ private void setupDocumentMocks(String includedDocumentReferenceString, Document
XDOM xdom = toXDOM(includedContent);
when(this.includedDocument.getPreparedXDOM()).thenReturn(xdom);
when(this.includedDocument.getRealLanguage()).thenReturn("");
- when(this.includedDocument.getContentAuthorReference()).thenReturn(INCLUDED_AUHOR);
+ when(this.includedDocument.getContentAuthorReference()).thenReturn(INCLUDED_AUTHOR);
}
private XDOM toXDOM(String content) throws Exception
@@ -801,11 +803,11 @@ private List runIncludeMacro(final Context context, final Author author,
verify(this.dab).popDocumentFromContext(any(Map.class));
} else {
if (parameters.getAuthor() == Author.CURRENT || (parameters.getAuthor() == Author.AUTO
- && this.authorizationManager.hasAccess(Right.PROGRAM, INCLUDED_AUHOR, null))) {
+ && this.authorizationManager.hasAccess(Right.PROGRAM, INCLUDED_AUTHOR, null))) {
verifyNoInteractions(this.authorExecutor);
} else {
DocumentReference includedReference = this.includedDocument.getDocumentReference();
- verify(this.authorExecutor).call(any(), eq(INCLUDED_AUHOR), eq(includedReference));
+ verify(this.authorExecutor).call(any(), eq(INCLUDED_AUTHOR), eq(includedReference));
}
}
diff --git a/xwiki-platform-core/xwiki-platform-rendering/xwiki-platform-rendering-macros/xwiki-platform-rendering-macro-include/src/test/java/org/xwiki/rendering/macro/include/IncludeMacroParametersTest.java b/xwiki-platform-core/xwiki-platform-rendering/xwiki-platform-rendering-macros/xwiki-platform-rendering-macro-include/src/test/java/org/xwiki/rendering/macro/include/IncludeMacroParametersTest.java
index 8ce6f2d99335..84d59283b37e 100644
--- a/xwiki-platform-core/xwiki-platform-rendering/xwiki-platform-rendering-macros/xwiki-platform-rendering-macro-include/src/test/java/org/xwiki/rendering/macro/include/IncludeMacroParametersTest.java
+++ b/xwiki-platform-core/xwiki-platform-rendering/xwiki-platform-rendering-macros/xwiki-platform-rendering-macro-include/src/test/java/org/xwiki/rendering/macro/include/IncludeMacroParametersTest.java
@@ -30,10 +30,10 @@
*
* @version $Id$
*/
-public class IncludeMacroParametersTest
+class IncludeMacroParametersTest
{
@Test
- public void setPage()
+ void setPage()
{
IncludeMacroParameters parameters = new IncludeMacroParameters();
@@ -43,7 +43,7 @@ public void setPage()
}
@Test
- public void setExcludeFirstHeading()
+ void setExcludeFirstHeading()
{
IncludeMacroParameters parameters = new IncludeMacroParameters();
diff --git a/xwiki-platform-core/xwiki-platform-search/xwiki-platform-search-solr/xwiki-platform-search-solr-server/xwiki-platform-search-solr-server-core-search/pom.xml b/xwiki-platform-core/xwiki-platform-search/xwiki-platform-search-solr/xwiki-platform-search-solr-server/xwiki-platform-search-solr-server-core-search/pom.xml
index 3ea9442652fe..a617e458fe22 100644
--- a/xwiki-platform-core/xwiki-platform-search/xwiki-platform-search-solr/xwiki-platform-search-solr-server/xwiki-platform-search-solr-server-core-search/pom.xml
+++ b/xwiki-platform-core/xwiki-platform-search/xwiki-platform-search-solr/xwiki-platform-search-solr-server/xwiki-platform-search-solr-server-core-search/pom.xml
@@ -49,7 +49,7 @@
ua.net.nlp
morfologik-ukrainian-lt
- 6.5.2
+ 6.5.3
true
diff --git a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-authentication/xwiki-platform-security-authentication-api/src/main/java/org/xwiki/security/authentication/AuthenticationConfiguration.java b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-authentication/xwiki-platform-security-authentication-api/src/main/java/org/xwiki/security/authentication/AuthenticationConfiguration.java
index f3b3364e0979..9861f3ae62d0 100644
--- a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-authentication/xwiki-platform-security-authentication-api/src/main/java/org/xwiki/security/authentication/AuthenticationConfiguration.java
+++ b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-authentication/xwiki-platform-security-authentication-api/src/main/java/org/xwiki/security/authentication/AuthenticationConfiguration.java
@@ -81,7 +81,7 @@ default List getCookieDomains()
*/
default String getValidationKey()
{
- return RandomStringUtils.random(32);
+ return RandomStringUtils.secure().next(32);
}
/**
@@ -95,6 +95,6 @@ default String getValidationKey()
*/
default String getEncryptionKey()
{
- return RandomStringUtils.random(32);
+ return RandomStringUtils.secure().next(32);
}
}
diff --git a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-authentication/xwiki-platform-security-authentication-default/src/main/java/org/xwiki/security/authentication/internal/DefaultAuthenticationConfiguration.java b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-authentication/xwiki-platform-security-authentication-default/src/main/java/org/xwiki/security/authentication/internal/DefaultAuthenticationConfiguration.java
index b1f8de0ba023..8b2aa02b73fb 100644
--- a/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-authentication/xwiki-platform-security-authentication-default/src/main/java/org/xwiki/security/authentication/internal/DefaultAuthenticationConfiguration.java
+++ b/xwiki-platform-core/xwiki-platform-security/xwiki-platform-security-authentication/xwiki-platform-security-authentication-default/src/main/java/org/xwiki/security/authentication/internal/DefaultAuthenticationConfiguration.java
@@ -25,7 +25,7 @@
import javax.inject.Named;
import javax.inject.Singleton;
-import org.apache.commons.lang.RandomStringUtils;
+import org.apache.commons.lang3.RandomStringUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.xwiki.component.annotation.Component;
@@ -141,7 +141,7 @@ private synchronized String getGeneratedKey(String name)
// If still not found, generate one and store it in the permanent configuration
if (generatedKey == null) {
- generatedKey = RandomStringUtils.random(32);
+ generatedKey = RandomStringUtils.secure().next(32);
try {
this.permanentConfiguration.setProperty(name, generatedKey);
} catch (ConfigurationSaveException e) {
diff --git a/xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/FilesystemStoreTools.java b/xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/FilesystemStoreTools.java
index 0436e13fd4b8..e23408c4bfac 100644
--- a/xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/FilesystemStoreTools.java
+++ b/xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/FilesystemStoreTools.java
@@ -209,7 +209,8 @@ public File getBackupFile(final File storageFile)
// We pad our file names with random alphanumeric characters so that multiple operations on the same
// file in the same transaction do not collide, the set of all capital and lower case letters
// and numbers has 62 possibilities and 62^8 = 218340105584896 between 2^47 and 2^48.
- return new File(storageFile.getAbsolutePath() + BACKUP_FILE_SUFFIX + RandomStringUtils.randomAlphanumeric(8));
+ return new File(storageFile.getAbsolutePath() + BACKUP_FILE_SUFFIX
+ + RandomStringUtils.secure().nextAlphanumeric(8));
}
/**
@@ -221,7 +222,8 @@ public File getBackupFile(final File storageFile)
*/
public File getTempFile(final File storageFile)
{
- return new File(storageFile.getAbsolutePath() + TEMP_FILE_SUFFIX + RandomStringUtils.randomAlphanumeric(8));
+ return new File(storageFile.getAbsolutePath() + TEMP_FILE_SUFFIX
+ + RandomStringUtils.secure().nextAlphanumeric(8));
}
/**