Author: remm
Date: Tue Dec 11 15:09:26 2018
New Revision: 1848691
URL: http://svn.apache.org/viewvc?rev=1848691&view=rev
Log:
Add i18n for various util packages.
Added:
tomcat/trunk/java/org/apache/tomcat/util/codec/binary/LocalStrings.properties
(with props)
tomcat/trunk/java/org/apache/tomcat/util/security/LocalStrings.properties
(with props)
Modified:
tomcat/trunk/java/org/apache/tomcat/util/buf/AbstractChunk.java
tomcat/trunk/java/org/apache/tomcat/util/buf/ByteChunk.java
tomcat/trunk/java/org/apache/tomcat/util/buf/CharChunk.java
tomcat/trunk/java/org/apache/tomcat/util/buf/LocalStrings.properties
tomcat/trunk/java/org/apache/tomcat/util/buf/UDecoder.java
tomcat/trunk/java/org/apache/tomcat/util/codec/binary/Base64.java
tomcat/trunk/java/org/apache/tomcat/util/codec/binary/BaseNCodec.java
tomcat/trunk/java/org/apache/tomcat/util/digester/Digester.java
tomcat/trunk/java/org/apache/tomcat/util/digester/FactoryCreateRule.java
tomcat/trunk/java/org/apache/tomcat/util/digester/LocalStrings.properties
tomcat/trunk/java/org/apache/tomcat/util/digester/ObjectCreateRule.java
tomcat/trunk/java/org/apache/tomcat/util/digester/Rule.java
tomcat/trunk/java/org/apache/tomcat/util/digester/SetPropertiesRule.java
tomcat/trunk/java/org/apache/tomcat/util/security/ConcurrentMessageDigest.java
tomcat/trunk/java/org/apache/tomcat/util/threads/TaskQueue.java
tomcat/trunk/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
tomcat/trunk/java/org/apache/tomcat/util/threads/res/LocalStrings.properties
Modified: tomcat/trunk/java/org/apache/tomcat/util/buf/AbstractChunk.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/buf/AbstractChunk.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/buf/AbstractChunk.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/buf/AbstractChunk.java Tue Dec 11
15:09:26 2018
@@ -18,12 +18,15 @@ package org.apache.tomcat.util.buf;
import java.io.Serializable;
+import org.apache.tomcat.util.res.StringManager;
+
/**
* Base class for the *Chunk implementation to reduce duplication.
*/
public abstract class AbstractChunk implements Cloneable, Serializable {
private static final long serialVersionUID = 1L;
+ protected static final StringManager sm =
StringManager.getManager(AbstractChunk.class);
/*
* JVMs may limit the maximum array size to slightly less than
Modified: tomcat/trunk/java/org/apache/tomcat/util/buf/ByteChunk.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/buf/ByteChunk.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/buf/ByteChunk.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/buf/ByteChunk.java Tue Dec 11
15:09:26 2018
@@ -512,7 +512,7 @@ public final class ByteChunk extends Abs
public void flushBuffer() throws IOException {
// assert out!=null
if (out == null) {
- throw new IOException("Buffer overflow, no sink " + getLimit() + "
" + buff.length);
+ throw new IOException(sm.getString("chunk.overflow", getLimit(),
buff.length));
}
out.realWriteBytes(buff, start, end - start);
end = start;
Modified: tomcat/trunk/java/org/apache/tomcat/util/buf/CharChunk.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/buf/CharChunk.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/buf/CharChunk.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/buf/CharChunk.java Tue Dec 11
15:09:26 2018
@@ -353,7 +353,7 @@ public final class CharChunk extends Abs
public void flushBuffer() throws IOException {
// assert out!=null
if (out == null) {
- throw new IOException("Buffer overflow, no sink " + getLimit() + "
" + buff.length);
+ throw new IOException(sm.getString("chunk.overflow", getLimit(),
buff.length));
}
out.realWriteChars(buff, start, end - start);
end = start;
Modified: tomcat/trunk/java/org/apache/tomcat/util/buf/LocalStrings.properties
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/buf/LocalStrings.properties?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/buf/LocalStrings.properties
[UTF-8] (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/buf/LocalStrings.properties
[UTF-8] Tue Dec 11 15:09:26 2018
@@ -19,9 +19,13 @@ byteBufferUtils.cleaner=Cannot use direc
c2bConverter.recycleFailed=Failed to recycle the C2B Converter. Creating new
BufferedWriter, WriteConvertor and IntermediateOutputStream.
+chunk.overflow=Buffer overflow and no sink is set, limit [{0}] and buffer
length [{1}]
+
hexUtils.fromHex.nonHex=The input must consist only of hex digits
hexUtils.fromHex.oddDigits=The input must consist of an even number of hex
digits
uDecoder.convertHexDigit.notHex=[{0}] is not a hexadecimal digit
+uDecoder.eof=End of file (EOF)
+uDecoder.noSlash=The encoded slash character is not allowed
uDecoder.urlDecode.conversionError=Failed to decode [{0}] using character set
[{1}]
uDecoder.urlDecode.missingDigit=Failed to decode [{0}] because the % character
must be followed by two hexademical digits
Modified: tomcat/trunk/java/org/apache/tomcat/util/buf/UDecoder.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/buf/UDecoder.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/buf/UDecoder.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/buf/UDecoder.java Tue Dec 11
15:09:26 2018
@@ -54,7 +54,7 @@ public final class UDecoder {
}
/** Unexpected end of data. */
- private static final IOException EXCEPTION_EOF = new
DecodeException("EOF");
+ private static final IOException EXCEPTION_EOF = new
DecodeException(sm.getString("uDecoder.eof"));
/** %xx with not-hex digit */
private static final IOException EXCEPTION_NOT_HEX_DIGIT = new
DecodeException(
@@ -277,7 +277,7 @@ public final class UDecoder {
char res = (char) Integer.parseInt(
str.substring(strPos + 1, strPos + 3), 16);
if (noSlash && (res == '/')) {
- throw new IllegalArgumentException("noSlash");
+ throw new
IllegalArgumentException(sm.getString("uDecoder.noSlash"));
}
dec.append(res);
strPos += 3;
Modified: tomcat/trunk/java/org/apache/tomcat/util/codec/binary/Base64.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/codec/binary/Base64.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/codec/binary/Base64.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/codec/binary/Base64.java Tue Dec
11 15:09:26 2018
@@ -278,7 +278,7 @@ public class Base64 extends BaseNCodec {
if (lineSeparator != null) {
if (containsAlphabetOrPad(lineSeparator)) {
final String sep = StringUtils.newStringUtf8(lineSeparator);
- throw new IllegalArgumentException("lineSeparator must not
contain base64 characters: [" + sep + "]");
+ throw new
IllegalArgumentException(sm.getString("base64.lineSeparator", sep));
}
if (lineLength > 0){ // null line-sep forces no chunking rather
than throwing IAE
this.encodeSize = BYTES_PER_ENCODED_BLOCK +
lineSeparator.length;
@@ -366,7 +366,7 @@ public class Base64 extends BaseNCodec {
}
break;
default:
- throw new IllegalStateException("Impossible modulus
"+context.modulus);
+ throw new
IllegalStateException(sm.getString("base64.impossibleModulus",
context.modulus));
}
context.currentLinePos += context.pos - savedPos; // keep track of
current line position
// if currentPos == 0 we are at the start of a line, so don't add
CRLF
@@ -477,7 +477,7 @@ public class Base64 extends BaseNCodec {
buffer[context.pos++] = (byte) ((context.ibitWorkArea) &
MASK_8BITS);
break;
default:
- throw new IllegalStateException("Impossible modulus
"+context.modulus);
+ throw new
IllegalStateException(sm.getString("base64.impossibleModulus",
context.modulus));
}
}
}
@@ -652,10 +652,7 @@ public class Base64 extends BaseNCodec {
final Base64 b64 = isChunked ? new Base64(urlSafe) : new Base64(0,
CHUNK_SEPARATOR, urlSafe);
final long len = b64.getEncodedLength(binaryData);
if (len > maxResultSize) {
- throw new IllegalArgumentException("Input array too big, the
output array would be bigger (" +
- len +
- ") than the specified maximum size of " +
- maxResultSize);
+ throw new
IllegalArgumentException(sm.getString("base64.inputTooLarge", len,
maxResultSize));
}
return b64.encode(binaryData);
@@ -722,7 +719,7 @@ public class Base64 extends BaseNCodec {
*/
public static byte[] encodeInteger(final BigInteger bigInt) {
if (bigInt == null) {
- throw new NullPointerException("encodeInteger called with null
parameter");
+ throw new
NullPointerException(sm.getString("base64.nullEncodeParameter"));
}
return encodeBase64(toIntegerBytes(bigInt), false);
}
Modified: tomcat/trunk/java/org/apache/tomcat/util/codec/binary/BaseNCodec.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/codec/binary/BaseNCodec.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/codec/binary/BaseNCodec.java
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/codec/binary/BaseNCodec.java Tue
Dec 11 15:09:26 2018
@@ -17,6 +17,7 @@
package org.apache.tomcat.util.codec.binary;
import org.apache.tomcat.util.buf.HexUtils;
+import org.apache.tomcat.util.res.StringManager;
/**
* Abstract superclass for Base-N encoders and decoders.
@@ -27,6 +28,8 @@ import org.apache.tomcat.util.buf.HexUti
*/
public abstract class BaseNCodec {
+ protected static final StringManager sm =
StringManager.getManager(BaseNCodec.class);
+
/**
* Holds thread context so classes can be thread-safe.
*
Added:
tomcat/trunk/java/org/apache/tomcat/util/codec/binary/LocalStrings.properties
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/codec/binary/LocalStrings.properties?rev=1848691&view=auto
==============================================================================
---
tomcat/trunk/java/org/apache/tomcat/util/codec/binary/LocalStrings.properties
(added)
+++
tomcat/trunk/java/org/apache/tomcat/util/codec/binary/LocalStrings.properties
Tue Dec 11 15:09:26 2018
@@ -0,0 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+base64.impossibleModulus=Impossible modulus [{0}]
+base64.inputTooLarge=Input array too large, the output array would be bigger
[{0}] than the specified maximum size of [{1}]
+base64.lineSeparator=Line separator must not contain base64 characters [{0}]
+base64.nullEncodeParameter=Cannot encode integer with null parameter
Propchange:
tomcat/trunk/java/org/apache/tomcat/util/codec/binary/LocalStrings.properties
------------------------------------------------------------------------------
svn:eol-style = native
Modified: tomcat/trunk/java/org/apache/tomcat/util/digester/Digester.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/digester/Digester.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/digester/Digester.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/digester/Digester.java Tue Dec 11
15:09:26 2018
@@ -100,8 +100,7 @@ public class Digester extends DefaultHan
break;
} catch (Throwable t) {
ExceptionUtils.handleThrowable(t);
-
LogFactory.getLog("org.apache.tomcat.util.digester.Digester")
- .error("Unable to load property source[" +
className + "].", t);
+
LogFactory.getLog(Digester.class).error(sm.getString("digester.propertySourceLoadError",
className), t);
}
}
}
@@ -613,7 +612,7 @@ public class Digester extends DefaultHan
try {
parser = getFactory().newSAXParser();
} catch (Exception e) {
- log.error("Digester.getParser: ", e);
+ log.error(sm.getString("digester.createParserError"), e);
return null;
}
@@ -851,10 +850,10 @@ public class Digester extends DefaultHan
try {
rule.finish();
} catch (Exception e) {
- log.error("Finish event threw exception", e);
+ log.error(sm.getString("digester.error.finish"), e);
throw createSAXException(e);
} catch (Error e) {
- log.error("Finish event threw error", e);
+ log.error(sm.getString("digester.error.finish"), e);
throw e;
}
}
@@ -913,19 +912,19 @@ public class Digester extends DefaultHan
}
rule.body(namespaceURI, name, bodyText);
} catch (Exception e) {
- log.error("Body event threw exception", e);
+ log.error(sm.getString("digester.error.body"), e);
throw createSAXException(e);
} catch (Error e) {
- log.error("Body event threw error", e);
+ log.error(sm.getString("digester.error.body"), e);
throw e;
}
}
} else {
if (debug) {
- log.debug(" No rules found matching '" + match + "'.");
+ log.debug(sm.getString("digester.noRulesFound", match));
}
if (rulesValidation) {
- log.warn(" No rules found matching '" + match + "'.");
+ log.warn(sm.getString("digester.noRulesFound", match));
}
}
@@ -943,10 +942,10 @@ public class Digester extends DefaultHan
}
rule.end(namespaceURI, name);
} catch (Exception e) {
- log.error("End event threw exception", e);
+ log.error(sm.getString("digester.error.end"), e);
throw createSAXException(e);
} catch (Error e) {
- log.error("End event threw error", e);
+ log.error(sm.getString("digester.error.end"), e);
throw e;
}
}
@@ -987,7 +986,7 @@ public class Digester extends DefaultHan
if (stack.empty())
namespaces.remove(prefix);
} catch (EmptyStackException e) {
- throw createSAXException("endPrefixMapping popped too many times");
+ throw createSAXException(sm.getString("digester.emptyStackError"));
}
}
@@ -1173,16 +1172,16 @@ public class Digester extends DefaultHan
}
rule.begin(namespaceURI, name, list);
} catch (Exception e) {
- log.error("Begin event threw exception", e);
+ log.error(sm.getString("digester.error.begin"), e);
throw createSAXException(e);
} catch (Error e) {
- log.error("Begin event threw error", e);
+ log.error(sm.getString("digester.error.begin"), e);
throw e;
}
}
} else {
if (debug) {
- log.debug(" No rules found matching '" + match + "'.");
+ log.debug(sm.getString("digester.noRulesFound", match));
}
}
@@ -1353,13 +1352,11 @@ public class Digester extends DefaultHan
*/
@Override
public void error(SAXParseException exception) throws SAXException {
-
- log.error("Parse Error at line " + exception.getLineNumber() + "
column "
- + exception.getColumnNumber() + ": " + exception.getMessage(),
exception);
+ log.error(sm.getString("digester.parseError",
exception.getLineNumber(),
+ exception.getColumnNumber()), exception);
if (errorHandler != null) {
errorHandler.error(exception);
}
-
}
@@ -1373,13 +1370,11 @@ public class Digester extends DefaultHan
*/
@Override
public void fatalError(SAXParseException exception) throws SAXException {
-
- log.error("Parse Fatal Error at line " + exception.getLineNumber() + "
column "
- + exception.getColumnNumber() + ": " + exception.getMessage(),
exception);
+ log.error(sm.getString("digester.parseErrorFatal",
exception.getLineNumber(),
+ exception.getColumnNumber()), exception);
if (errorHandler != null) {
errorHandler.fatalError(exception);
}
-
}
@@ -1393,12 +1388,9 @@ public class Digester extends DefaultHan
*/
@Override
public void warning(SAXParseException exception) throws SAXException {
+ log.error(sm.getString("digester.parseWarning",
exception.getLineNumber(),
+ exception.getColumnNumber()), exception);
if (errorHandler != null) {
- log.warn(
- "Parse Warning Error at line " + exception.getLineNumber()
+ " column "
- + exception.getColumnNumber() + ": " +
exception.getMessage(),
- exception);
-
errorHandler.warning(exception);
}
@@ -1681,7 +1673,7 @@ public class Digester extends DefaultHan
try {
return stack.peek();
} catch (EmptyStackException e) {
- log.warn("Empty stack (returning null)");
+ log.warn(sm.getString("digester.emptyStack"));
return null;
}
}
@@ -1700,7 +1692,7 @@ public class Digester extends DefaultHan
try {
return stack.peek(n);
} catch (EmptyStackException e) {
- log.warn("Empty stack (returning null)");
+ log.warn(sm.getString("digester.emptyStack"));
return null;
}
}
@@ -1715,7 +1707,7 @@ public class Digester extends DefaultHan
try {
return stack.pop();
} catch (EmptyStackException e) {
- log.warn("Empty stack (returning null)");
+ log.warn(sm.getString("digester.emptyStack"));
return null;
}
}
@@ -1792,7 +1784,7 @@ public class Digester extends DefaultHan
try {
return params.peek();
} catch (EmptyStackException e) {
- log.warn("Empty stack (returning null)");
+ log.warn(sm.getString("digester.emptyStack"));
return null;
}
}
@@ -1813,7 +1805,7 @@ public class Digester extends DefaultHan
}
return params.pop();
} catch (EmptyStackException e) {
- log.warn("Empty stack (returning null)");
+ log.warn(sm.getString("digester.emptyStack"));
return null;
}
}
@@ -1856,15 +1848,15 @@ public class Digester extends DefaultHan
}
}
if (locator != null) {
- String error = "Error at (" + locator.getLineNumber() + ", " +
locator.getColumnNumber()
- + ") : " + message;
+ String error = sm.getString("digester.errorLocation",
+ locator.getLineNumber(), locator.getColumnNumber(),
message);
if (e != null) {
return new SAXParseException(error, locator, e);
} else {
return new SAXParseException(error, locator);
}
}
- log.error("No Locator!");
+ log.error(sm.getString("digester.noLocator"));
if (e != null) {
return new SAXException(message, e);
} else {
Modified:
tomcat/trunk/java/org/apache/tomcat/util/digester/FactoryCreateRule.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/digester/FactoryCreateRule.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/digester/FactoryCreateRule.java
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/digester/FactoryCreateRule.java
Tue Dec 11 15:09:26 2018
@@ -101,8 +101,8 @@ public class FactoryCreateRule extends R
} catch (Exception e) {
// log message and error
if (digester.log.isInfoEnabled()) {
- digester.log.info("[FactoryCreateRule] Create exception
ignored: " +
- ((e.getMessage() == null) ? e.getClass().getName() :
e.getMessage()));
+ digester.log.info(sm.getString("rule.createError",
+ ((e.getMessage() == null) ? e.getClass().getName() :
e.getMessage())));
if (digester.log.isDebugEnabled()) {
digester.log.debug("[FactoryCreateRule] Ignored
exception:", e);
}
Modified:
tomcat/trunk/java/org/apache/tomcat/util/digester/LocalStrings.properties
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/digester/LocalStrings.properties?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/digester/LocalStrings.properties
[UTF-8] (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/digester/LocalStrings.properties
[UTF-8] Tue Dec 11 15:09:26 2018
@@ -13,6 +13,24 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-digester.encodingInvalid=The encoding [{0}] is not recognised by the JRE and
will be ignored
+digester.createParserError=Error creating SAX parser
+digester.emptyStack=Empty stack, returning null
+digester.emptyStackError=Empty stack
+digester.encodingInvalid=The encoding [{0}] is not recognized by the JRE and
will be ignored
+digester.error.begin=Begin event threw exception
+digester.error.body=Body event threw exception
+digester.error.end=End event threw exception
+digester.error.finish=Finish event threw exception
+digester.errorLocation=Error at line [{0}] column [{1}]: [{2}]
digester.failedToUpdateAttributes=Attribute [{0}] failed to update and remains
[{1}]
digester.failedToUpdateSystemProperty=System property [{0}] failed to update
and remains [{1}]
+digester.parseError=Parse error at line [{0}] column [{1}]
+digester.parseErrorFatal=Parse fatal error at line [{0}] column [{1}]
+digester.parseWarning=Parse warning at line [{0}] column [{1}]
+digester.propertySourceLoadError=Error loading property source [{0}]
+digester.noLocator=No Locator
+digester.noRulesFound=No rules found matching [{0}]
+
+rule.createError=Error creating object: [{0}]
+rule.noClassName=No class name specified for [{0}] [{1}]
+rule.noProperty=Match [{0}] failed to set property [{1}] to [{2}]
Modified:
tomcat/trunk/java/org/apache/tomcat/util/digester/ObjectCreateRule.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/digester/ObjectCreateRule.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/digester/ObjectCreateRule.java
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/digester/ObjectCreateRule.java Tue
Dec 11 15:09:26 2018
@@ -108,8 +108,7 @@ public class ObjectCreateRule extends Ru
}
if (realClassName == null) {
- throw new NullPointerException("No class name specified for " +
- namespace + " " + name);
+ throw new NullPointerException(sm.getString("rule.noClassName",
namespace, name));
}
// Instantiate the new object and push it on the context stack
Modified: tomcat/trunk/java/org/apache/tomcat/util/digester/Rule.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/digester/Rule.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/digester/Rule.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/digester/Rule.java Tue Dec 11
15:09:26 2018
@@ -16,6 +16,7 @@
*/
package org.apache.tomcat.util.digester;
+import org.apache.tomcat.util.res.StringManager;
import org.xml.sax.Attributes;
/**
@@ -24,6 +25,8 @@ import org.xml.sax.Attributes;
*/
public abstract class Rule {
+ protected static final StringManager sm =
StringManager.getManager(Rule.class);
+
// ----------------------------------------------------------- Constructors
/**
Modified:
tomcat/trunk/java/org/apache/tomcat/util/digester/SetPropertiesRule.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/digester/SetPropertiesRule.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/digester/SetPropertiesRule.java
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/digester/SetPropertiesRule.java
Tue Dec 11 15:09:26 2018
@@ -72,9 +72,7 @@ public class SetPropertiesRule extends R
if (!digester.isFakeAttribute(top, name)
&& !IntrospectionUtils.setProperty(top, name, value)
&& digester.getRulesValidation()) {
- digester.log.warn("[SetPropertiesRule]{" + digester.match +
- "} Setting property '" + name + "' to '" +
- value + "' did not find a matching property.");
+ digester.log.warn(sm.getString("rule.noProperty",
digester.match, name, value));
}
}
Modified:
tomcat/trunk/java/org/apache/tomcat/util/security/ConcurrentMessageDigest.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/security/ConcurrentMessageDigest.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
---
tomcat/trunk/java/org/apache/tomcat/util/security/ConcurrentMessageDigest.java
(original)
+++
tomcat/trunk/java/org/apache/tomcat/util/security/ConcurrentMessageDigest.java
Tue Dec 11 15:09:26 2018
@@ -23,6 +23,8 @@ import java.util.Map;
import java.util.Queue;
import java.util.concurrent.ConcurrentLinkedQueue;
+import org.apache.tomcat.util.res.StringManager;
+
/**
* A thread safe wrapper around {@link MessageDigest} that does not make use
* of ThreadLocal and - broadly - only creates enough MessageDigest objects
@@ -30,6 +32,8 @@ import java.util.concurrent.ConcurrentLi
*/
public class ConcurrentMessageDigest {
+ private static final StringManager sm =
StringManager.getManager(ConcurrentMessageDigest.class);
+
private static final String MD5 = "MD5";
private static final String SHA1 = "SHA-1";
@@ -47,7 +51,7 @@ public class ConcurrentMessageDigest {
init(MD5);
init(SHA1);
} catch (NoSuchAlgorithmException e) {
- throw new IllegalArgumentException(e);
+ throw new
IllegalArgumentException(sm.getString("concurrentMessageDigest.noDigest"), e);
}
}
@@ -68,7 +72,7 @@ public class ConcurrentMessageDigest {
Queue<MessageDigest> queue = queues.get(algorithm);
if (queue == null) {
- throw new IllegalStateException("Must call init() first");
+ throw new
IllegalStateException(sm.getString("concurrentMessageDigest.noDigest"));
}
MessageDigest md = queue.poll();
@@ -78,7 +82,7 @@ public class ConcurrentMessageDigest {
} catch (NoSuchAlgorithmException e) {
// Ignore. Impossible if init() has been successfully called
// first.
- throw new IllegalStateException("Must call init() first");
+ throw new
IllegalStateException(sm.getString("concurrentMessageDigest.noDigest"), e);
}
}
Added: tomcat/trunk/java/org/apache/tomcat/util/security/LocalStrings.properties
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/security/LocalStrings.properties?rev=1848691&view=auto
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/security/LocalStrings.properties
(added)
+++ tomcat/trunk/java/org/apache/tomcat/util/security/LocalStrings.properties
Tue Dec 11 15:09:26 2018
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+concurrentMessageDigest.noDigest=Digest algorithm unavailable
Propchange:
tomcat/trunk/java/org/apache/tomcat/util/security/LocalStrings.properties
------------------------------------------------------------------------------
svn:eol-style = native
Modified: tomcat/trunk/java/org/apache/tomcat/util/threads/TaskQueue.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/threads/TaskQueue.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/threads/TaskQueue.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/threads/TaskQueue.java Tue Dec 11
15:09:26 2018
@@ -21,6 +21,8 @@ import java.util.concurrent.LinkedBlocki
import java.util.concurrent.RejectedExecutionException;
import java.util.concurrent.TimeUnit;
+import org.apache.tomcat.util.res.StringManager;
+
/**
* As task queue specifically designed to run with a thread pool executor. The
* task queue is optimised to properly utilize threads within a thread pool
@@ -31,6 +33,8 @@ import java.util.concurrent.TimeUnit;
public class TaskQueue extends LinkedBlockingQueue<Runnable> {
private static final long serialVersionUID = 1L;
+ protected static final StringManager sm = StringManager
+ .getManager("org.apache.tomcat.util.threads.res");
private transient volatile ThreadPoolExecutor parent = null;
@@ -55,12 +59,12 @@ public class TaskQueue extends LinkedBlo
}
public boolean force(Runnable o) {
- if ( parent==null || parent.isShutdown() ) throw new
RejectedExecutionException("Executor not running, can't force a command into
the queue");
+ if ( parent==null || parent.isShutdown() ) throw new
RejectedExecutionException(sm.getString("taskQueue.notRunning"));
return super.offer(o); //forces the item onto the queue, to be used if
the task is rejected
}
public boolean force(Runnable o, long timeout, TimeUnit unit) throws
InterruptedException {
- if ( parent==null || parent.isShutdown() ) throw new
RejectedExecutionException("Executor not running, can't force a command into
the queue");
+ if ( parent==null || parent.isShutdown() ) throw new
RejectedExecutionException(sm.getString("taskQueue.notRunning"));
return super.offer(o,timeout,unit); //forces the item onto the queue,
to be used if the task is rejected
}
Modified:
tomcat/trunk/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
Tue Dec 11 15:09:26 2018
@@ -171,7 +171,7 @@ public class ThreadPoolExecutor extends
try {
if (!queue.force(command, timeout, unit)) {
submittedCount.decrementAndGet();
- throw new RejectedExecutionException("Queue capacity
is full.");
+ throw new
RejectedExecutionException(sm.getString("threadPoolExecutor.queueFull"));
}
} catch (InterruptedException x) {
submittedCount.decrementAndGet();
Modified:
tomcat/trunk/java/org/apache/tomcat/util/threads/res/LocalStrings.properties
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/threads/res/LocalStrings.properties?rev=1848691&r1=1848690&r2=1848691&view=diff
==============================================================================
---
tomcat/trunk/java/org/apache/tomcat/util/threads/res/LocalStrings.properties
[UTF-8] (original)
+++
tomcat/trunk/java/org/apache/tomcat/util/threads/res/LocalStrings.properties
[UTF-8] Tue Dec 11 15:09:26 2018
@@ -13,4 +13,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+taskQueue.notRunning=Executor not running, can't force a command into the queue
+
+threadPoolExecutor.queueFull=Queue capacity is full
threadPoolExecutor.threadStoppedToAvoidPotentialLeak=Stopping thread [{0}] to
avoid potential memory leaks after a context was stopped.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]