# 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.

jdbcAccessLogValve.close=Failed to close database
jdbcAccessLogValve.exception=Exception performing insert access entry
cometConnectionManagerValve.event=Exception processing event
cometConnectionManagerValve.listenerEvent=Exception processing session listener event

# Access log valve
accessLogValve.openFail=Failed to open access log file [{0}]
accessLogValve.closeFail=Failed to close access log file
accessLogValve.openDirFail=Failed to create directory [{0}] for access logs
accessLogValve.rotateFail=Failed to rotate access log
accessLogValve.renameFail=Failed to rename access log from [{0}] to [{1}]
accessLogValve.alreadyExists=Failed to rename access log from [{0}] to [{1}], file already exists.
accessLogValve.invalidLocale=Failed to set locale to [{0}]
accessLogValve.unsupportedEncoding=Failed to set encoding to [{0}], will use the system default character set.
accessLogValve.invalidPortType=Invalid port type [{0}], using server (local) port
accessLogValve.writeFail=Failed to write log message [{0}]

# Error report valve
errorReportValve.errorReport=Error report
errorReportValve.statusHeader=HTTP Status {0} - {1}
errorReportValve.exceptionReport=Exception report
errorReportValve.statusReport=Status report
errorReportValve.message=message
errorReportValve.description=description
errorReportValve.exception=exception
errorReportValve.rootCause=root cause
errorReportValve.note=note
errorReportValve.rootCauseInLogs=The full stack trace of the root cause is available in the {0} logs.
errorReportValve.noDescription=No description available

# Remote IP valve
remoteIpValve.invalidPortHeader=Invalid value [{0}] found for port in HTTP header [{1}]

# Request filter valve - RemoteAddrValve, RemoteHostValve
requestFilterValve.configInvalid=One or more invalid configuration settings were provided for the Remote[Addr|Host]Valve which prevented the Valve and its parent containers from starting
requestFilterValve.deny=Denied request for [{0}] based on property [{1}]

sslValve.certError=Failed to process certificate string [{0}] to create a java.security.cert.X509Certificate object
sslValve.invalidProvider=The SSL provider specified on the connector associated with this request of [{0}] is invalid. The certificate data could not be processed.

#Stuck thread detection Valve
stuckThreadDetectionValve.notifyStuckThreadDetected=Thread "{0}" (id={6}) has been active for {1} milliseconds (since {2}) to serve the same request for {4} and may be stuck (configured threshold for this StuckThreadDetectionValve is {5} seconds). There is/are {3} thread(s) in total that are monitored by this Valve and may be stuck.
stuckThreadDetectionValve.notifyStuckThreadCompleted=Thread "{0}" (id={3}) was previously reported to be stuck but has completed. It was active for approximately {1} milliseconds.{2,choice,0#|0< There is/are still {2} thread(s) that are monitored by this Valve and may be stuck.}
stuckThreadDetectionValve.notifyStuckThreadInterrupted=Thread "{0}" (id={5}) has been interrupted because it was active for {1} milliseconds (since {2}) to serve the same request for {3} and was probably stuck (configured interruption threshold for this StuckThreadDetectionValve is {4} seconds).

# HTTP status reports
# All status codes registered with IANA can be found at
# http://www.iana.org/assignments/http-status-codes/http-status-codes.xml
# The list might be kept in sync with the one in
# org/apache/tomcat/util/http/res/LocalStrings.properties.
http.100=The client may continue.
http.101=The server is switching protocols according to the "Upgrade" header.
http.102=The server has accepted the complete request, but has not yet completed it.
http.201=The request succeeded and a new resource has been created on the server.
http.202=This request was accepted for processing, but has not been completed.
http.203=The meta information presented by the client did not originate from the server.
http.204=The request succeeded but there is no information to return.
http.205=The client should reset the document view which caused this request to be sent.
http.206=The server has fulfilled a partial GET request for this resource.
http.207=Multiple status values have been returned.
http.208=This collection binding was already reported.
http.226=The response is a representation of the result of one or more instance-manipulations applied to the current instance.
http.300=The requested resource corresponds to any one of a set of representations, each with its own specific location.
http.301=The requested resource has moved permanently to a new location.
http.302=The requested resource has moved temporarily to a new location.
http.303=The response to this request can be found under a different URI.
http.304=The requested resource is available and has not been modified.
http.305=The requested resource must be accessed through the proxy given by the "Location" header.
http.307=The requested resource resides temporarily under a different URI.
http.308=The target resource has been assigned a new permanent URI and any future references to this resource SHOULD use one of the returned URIs.
http.400=The request sent by the client was syntactically incorrect.
http.401=This request requires HTTP authentication.
http.402=Payment is required for access to this resource.
http.403=Access to the specified resource has been forbidden.
http.404=The requested resource is not available.
http.405=The specified HTTP method is not allowed for the requested resource.
http.406=The resource identified by this request is only capable of generating responses with characteristics not acceptable according to the request "accept" headers.
http.407=The client must first authenticate itself with the proxy.
http.408=The client did not produce a request within the time that the server was prepared to wait.
http.409=The request could not be completed due to a conflict with the current state of the resource.
http.410=The requested resource is no longer available, and no forwarding address is known.
http.411=This request cannot be handled without a defined content length.
http.412=A specified precondition has failed for this request.
http.413=The request entity is larger than the server is willing or able to process.
http.414=The server refused this request because the request URI was too long.
http.415=The server refused this request because the request entity is in a format not supported by the requested resource for the requested method.
http.416=The requested byte range cannot be satisfied.
http.417=The expectation given in the "Expect" request header could not be fulfilled.
http.422=The server understood the content type and syntax of the request but was unable to process the contained instructions.
http.423=The source or destination resource of a method is locked.
http.424=The method could not be performed on the resource because the requested action depended on another action and that action failed.
http.426=The request can only be completed after a protocol upgrade.
http.428=The request is required to be conditional.
http.429=The user has sent too many requests in a given amount of time.
http.431=The server refused this request because the request header fields are too large.
http.451=The server refused this request for legal reasons.
http.500=The server encountered an internal error that prevented it from fulfilling this request.
http.501=The server does not support the functionality needed to fulfill this request.
http.502=This server received an invalid response from a server it consulted when acting as a proxy or gateway.
http.503=The requested service is not currently available.
http.504=The server received a timeout from an upstream server while acting as a gateway or proxy.
http.505=The server does not support the requested HTTP protocol version.
http.506=The chosen variant resource is configured to engage in transparent content negotiation itself, and is therefore not a proper end point in the negotiation process.
http.507=The resource does not have sufficient space to record the state of the resource after execution of this method.
http.508=The server terminated an operation because it encountered an infinite loop.
http.510=The policy for accessing the resource has not been met in the request.
http.511=The client needs to authenticate to gain network access.
