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

application.title=Tomcat Server Administration
errors.header=<h2><font color="red">Validation Errors</font></h2>You must correct the following errors before proceeding:<ul>
errors.footer=</ul><hr>
error.login=<li>Invalid username or password</li>
prompt.username=User Name
prompt.password=Password
button.login=Login
button.reset=Reset
button.save=Save
button.change=Change
button.cancel=Reset
button.commit=Commit Changes
button.logout=Log Out
login.enter=Enter a username and password to start a new session
login.changeLanguage=Change the language
error.login=Invalid username or password
error.tryagain=To try again, click
error.here=here
prompt.someText=Some Text
prompt.moreText=More Text
sample.someText.required=<li>"Some Text" cannot be empty</li>
sample.moreText.required=<li>"More Text" cannot be empty</li>
save.success=Save sucessful!
save.fail=Save failed!
server.portnumber=Port Number
server.debuglevel=Debug Level
server.shutdown=Shutdown
server.properties=Server Properties
warning.header=<center><h4><font color="red">Warning!</font></h4></center> <ul>
server.port.warning=<li>Port number less than 1024 requires special software capabilities.
error.portNumber.required=<li>PortNumber cannot be empty</li>
error.portNumber.format=<li>PortNumber not a valid integer!</li>
error.portNumber.range=<li>PortNumber seems out of range. Valid range is 1-65535. </li>
error.shutdownText.length=<li>Shutdown Text must be atleast 6 characters</li>
error.engineName.required=<li>Engine name is required</li>
error.acceptCountText.required=<li>Accept count required</li>
error.acceptCountText.format=<li>Accept count not a valid integer!</li>
error.acceptCountText.range=<li>Accept count seems out of range. Valid range is 0-128. </li>
error.connTimeOutText.required=<li>Connection time out required</li>
error.connTimeOutText.format=<li>Connection time out not a valid integer!</li>
error.connTimeOutText.range=<li>Connection time out seems out of range. Valid range is 0-60000. </li>
error.bufferSizeText.required=<li>Buffer Size required</li>
error.bufferSizeText.format=<li>Buffer Size not a valid integer!</li>
error.bufferSizeText.range=<li>Buffer Size seems out of range. Valid range is 1-8192. </li>
error.address.invalid=<li>IP Address invalid</li>
error.redirectPortText.required=<li>Redirect Port Number cannot be empty</li>
error.redirectPortText.format=<li>Redirect Port Number not a valid integer!</li>
error.redirectPortText.range=<li>Redirect Port Number seems out of range. Valid range is 1-65535. </li>
error.minProcessorsText.required=<li>Minimum Processors cannot be empty</li>
error.minProcessorsText.format=<li>Minimum Processors not a valid integer!</li>
error.minProcessorsText.range=<li>Minimum Processors seems out of range. Valid range is 1-512. </li>
error.maxProcessorsText.required=<li>Maximum Processors cannot be empty</li>
error.maxProcessorsText.format=<li>Maximum Processors not a valid integer!</li>
error.maxProcessorsText.range=<li>Maximum Processors seems out of range. Valid range is 1-512. Also, maximum >= minimum. </li>
error.proxyName.invalid=<li>Proxy name is invalid</li>
error.proxyPortText.required=<li>Proxy Port Number cannot be empty</li>
error.proxyPortText.format=<li>Proxy Port Number not a valid integer!</li>
error.proxyPortText.range=<li>Proxy Port Number seems out of range. Valid range is 1-65535. </li>
error.hostName.bad=Invalid host name {0}
error.hostName.required=<li>Hostname is required</li>
error.hostName.exists=<li>Hostname already exists</li>
error.appBase.required=<li>Application Base is required</li>
service.name=Name
service.engine.props=Engine Properties
service.defaulthostname=Default Hostname
service.properties=Service Properties
service.property=Property
service.value=Value
service.create.new=Create New Service
actions.available.actions=Available Actions
actions.services.create=Create New Service
actions.services.delete=Delete This Service
actions.services.deletes=Delete Existing Services
actions.services.edit=Edit Existing Service
actions.accesslogger.create=Create New Access Logger
actions.accesslogger.delete=Delete Access Logger
actions.connectors.create=Create New Connector
actions.connectors.delete=Delete This Connector
actions.connectors.deletes=Delete Existing Connectors
actions.connectors.edit=Edit Existing Connector
actions.contexts.create=Create New Context
actions.contexts.delete=Delete This Context
actions.contexts.deletes=Delete Existing Contexts
actions.contexts.edit=Edit Existing Context
actions.defaultcontexts.create=Create New DefaultContext
actions.defaultcontexts.delete=Delete This DefaultContext
actions.defaultcontexts.deletes=Delete Existing DefaultContext
actions.defaultcontexts.edit=Edit Existing DefaultContext
actions.group.create=Create New Group
actions.group.delete=Delete Existing Group
actions.hosts.create=Create New Host
actions.hosts.delete=Delete This Host
actions.hosts.deletes=Delete Existing Hosts
actions.hosts.edit=Edit Existing Host
actions.loggers.create=Create New Logger
actions.loggers.delete=Delete This Logger
actions.loggers.deletes=Delete Existing Loggers
actions.loggers.edit=Edit Existing Logger
actions.realms.create=Create New User Realm
actions.realms.delete=Delete This User Realm
actions.realms.deletes=Delete User Realms
actions.realms.edit=Edit Existing Realm
actions.requestfilter.create=Create New Request Filter
actions.requestfilter.delete=Delete Request Filters
actions.user.create=Create New User
actions.user.delete=Delete Existing User
actions.valves.create=Create New Valve
actions.valves.edit=Edit Valve
actions.valves.delete=Delete This Valve
actions.valves.deletes=Delete Existing Valves
actions.alias.create=Create New Aliases
actions.alias.delete=Delete Aliases
new.alias=New Alias
connector.type=Type
connector.scheme=Scheme
connector.accept.count=Accept Count
connector.compression=Compression
connector.connection.linger=Connection Linger
connector.connection.timeout=Connection Timeout
connector.connection.uploadTimeout=Connection Upload Timeout
connector.default.buffer=Default Buffer Size
connector.connection.disableUploadTimeout=Disable Upload Timeout
connector.enable.dns=Enable DNS Lookups
connector.uriencoding=URI Encoding
connector.useBodyEncodingForURI=Use Body Encoding For URI Query Parameters
connector.allowTrace=Allow TRACE Method
connector.address.ip=IP Address
connector.redirect.portnumber=Redirect Port Number
connector.min=Minimum
connector.milliseconds=milliseconds
connector.max=Maximum
connector.maxkeepalive=Max KeepAlive Requests
connector.maxspare=Max Spare Threads
connector.maxthreads=Max Threads
connector.minspare=Min Spare Threads
connector.threadpriority=Processor Thread Priority
connector.proxy.name=Proxy Name
connector.proxy.portnumber=Proxy Port Number
connector.algorithm=Algorithm
connector.ciphers=Ciphers
connector.client.auth=Client Authentication
connector.keystore.filename=Keystore Filename
connector.keystore.password=Keystore Password
connector.keystore.type=Keystore Type
connector.truststore.filename=Trust Store Filename
connector.truststore.password=Trust Store Password
connector.truststore.type=Trust Store Type
connector.sslProtocol=SSL Protocol
connector.keyPass.warning=<li>Please use keytool to generate certificate.</li>
connector.secure=Secure
connector.tcpNoDelay=TCP No Delay 
connector.xpoweredby=X Powered By 
host.properties=Host Properties
host.name=Name
host.base=Application Base
host.autoDeploy=Auto Deploy
host.deployXML=Deploy XML
host.deployOnStartup=Deploy On Startup
host.wars=Unpack WARs
host.aliases=Aliases
host.alias.name=Alias Name
host.xmlNamespaceAware=XML Namespace Aware
host.xmlValidation=XML Validation
error.aliasName.exists=<li>Alias already exists</li>
error.aliasName.required=<li>Alias name is required</li>
context.properties=Context Properties
context.cookies=Cookies
context.cross.context=Cross Context
context.docBase=Document Base
context.override=Override
context.privileged=Privileged
context.path=Path
context.reloadable=Reloadable
context.swallowOutput=Swallow Output
context.usenaming=Use Naming
context.workdir=Working Directory
context.loader.properties=Loader Properties
context.sessionmgr.properties=Session Manager Properties
context.checkInterval=Check interval
context.sessionId=Session ID Initializer
context.max.sessions=Maximum Active Sessions
context.antiResourceLocking=Prevent Locking Resources
context.antiJarLocking=Prevent Jar Locking
defaultcontext.properties=DefaultContext Properties
error.context.directory=Document base does not exist or is not a readable directory
error.docBase.required=<li>Document base cannot be null</li>
error.path.required=<li>Path cannot be null</li>
error.workDir.required=<li>Working directory cannot be null</li>
error.ldrCheckInterval.required=<li>Loader check interval cannot be empty</li>
error.ldrCheckInterval.format=<li>Loader check interval not a valid integer!</li>
error.ldrCheckInterval.range=<li>Loader check interval seems out of range. Valid range is 1-1000. </li>
error.mgrCheckInterval.required=<li>Manager check interval cannot be empty</li>
error.mgrCheckInterval.format=<li>Manager check interval not a valid integer!</li>
error.mgrCheckInterval.range=<li>Manager check interval seems out of range. Valid range is 1-1000. </li>
error.mgrSessionIDInit.required=<li>Session Manager Initialization ID cannot be empty</li>
error.mgrMaxSessions.required=<li>Maximum sessions cannot be empty</li>
error.mgrMaxSessions.format=<li>Maximum sessions not a valid integer!</li>
error.mgrMaxSessions.range=<li>Maximum sessions seems out of range. Valid range is -1 to 100. </li>
list.none=(None)
logger.directory=Directory
logger.prefix=Prefix
logger.suffix=Suffix
logger.timestamp=Timestamp
logger.filelogger.properties=Filelogger specific Properties
logger.verbositylevel=Verbosity Level
error.loggerName.bad=Invalid logger name {0}
error.loggerName.exists=<li>A Logger already exists.</li>
error.directory.required=<li>Directory cannot be empty.</li>
error.prefix.required=<li>Prefix cannot be empty.</li>
error.suffix.required=<li>Suffix cannot be empty.</li>
error.valveName.bad=Invalid valve name {0}
error.vavlveName.exists=<li>Valve already exists</li>
error.singleSignOn.exists=<li>SingleSignOn Valve already exists</li>
user.fullName=Full Name
user.groups=Member in Groups
user.newUser=Create New User Properties
user.oldUser=Edit Existing User Properties
user.password=Password
user.properties=User Properties
user.roles=Security Roles
user.username=Username
error.password.required=<li>Password is required</li>
error.username.required=<li>Username is required</li>
error.get.attributes=Error retrieving information properties.
error.set.attributes=Error setting information properties.
actions.delete=Delete
error.defaultHost.required=<li>Default Hostname required</li>
error.engineName.bad=Invalid engine name {0}
error.engineName.exists=<li>Engine Name already exists</li>
error.serviceName.bad=Invalid service name {0}
error.serviceName.required=<li>Service Name required</li>
error.serviceName.exists=<li>Service Name already exists</li>
error.jdbcrealm=Error occured during setting JDBCRealm.
error.jndirealm=Error occured during setting JNDIRealm.
error.userdbrealm=Error occured during setting UserdatabaseRealm.
error.datasourcerealm=Error occured during setting DataSourceRealm.
error.realmName.bad=Invalid realm name {0}
error.realmName.required=<li>Realm Name required.</li>
error.realmName.exists=<li>A realm already exists.</li>
error.contextName.bad=Invalid context name {0}
error.contextName.exists=<li>Context already exists.</li>
error.defaultcontextName.exists=<li>DefaultContext already exists.</li>
error.path.prefix=<li>Path must begin with a '/'.</li>
error.loaderName.bad=Invalid loader name {0}
error.managerName.bad=Invalid manager name {0}
error.connectorName.bad=Invalid connector name {0}
error.connectorName.exists=<li>Connector already exists</li>
error.pattern.required=<li>Pattern is required</li>
error.valveName.bad=Invalid valve name {0}
error.valveName.exists=<li>Valve already exists</li>
realm.driver=Database Driver
realm.passwd=Database Password
realm.url=Database URL
realm.userName=Database User Name
realm.digest=Digest Algorithm
realm.passwordCol=Password Column
realm.roleNameCol=Role Name Column
realm.userNameCol=User Name Column
realm.userRoleTable=User Role Table
realm.userTable=User Table
realm.resource=Resource Name
realm.pathName=Path Name
realm.connName=Connection Name
realm.connPassword=Connection Password
realm.connURL=Connection URL
realm.connFactory=Context Factory
realm.roleBase=Role Base Element
realm.roleName=Role Name
realm.user.roleName=User Role Name
realm.pattern=Role Search Pattern
realm.role.subtree=Search Role Subtree
realm.userBase=User Base Element
realm.user.subtree=Search User Subtree
realm.userPassword=User Password
realm.userPattern=User Pattern
realm.userSearch=User Search
realm.dataSourceName=DataSource Name
realm.localDataSource=Local DataSource
realm.userCredCol=User Credential Column 
valve.access.properties=Access Logger Properties
valve.request.properties=Request Filter Properties
valve.single.properties=Single SignOn Valve Properties
valve.remotehost.properties=Remote Host Valve Properties
valve.remoteaddress.properties=Remote Address Valve Properties
valve.resolveHosts=Resolve Hosts
valve.rotatable=Rotatable
valve.pattern=Pattern
valve.allowHosts=Allow these Hosts
valve.denyHosts=Deny these Hosts
valve.allowIPs=Allow IP addresses
valve.denyIPs=Deny IP addresses
error.allowHost=<li>Allow is invalid.  Need to include the admin's Hostname.</li>
error.denyHost=<li>Deny is invalid.  Need to exclude the admin's Hostname.</li>
error.allowIP=<li>Allow is invalid.  Need to include the admin's IP address.</li>
error.denyIP=<li>Deny is invalid.  Need to exclude the admin's IP address.</li>
error.allow.deny.required=<li>Allow or deny is required.</li>
error.syntax=<li>Syntax error in request filter pattern.</li>
error.resource.required=<li>Resource Name is required.</li>
error.resource.javaprefix=<li>Resource must have "java:" prefix.</li>
error.pathName.required=<li>Path Name is required.</li>
error.driver.required=<li>Database driver is required.</li>
error.roleNameCol.required=<li>Role name column is required.</li>
error.userNameCol.required=<li>User name column is required.</li>
error.passwordCol.required=<li>Password column is required.</li>
error.userTable.required=<li>User table is required.</li>
error.roleTable.required=<li>User role table is required.</li>
error.connectionPassword.required=<li>Database password is required.</li>
error.connectionURL.required=<li>Database URL is required.</li>
error.connectionName.required=<li>Database username is required.</li>
error.roleName.required=<li>Role name is required.</li>
error.userRoleName.required=<li>User Role name is required.</li>
error.digest.required=<li>Digest algorithm is required.</li>
error.roleBase.required=<li>Role base element is required.</li>
error.rolePattern.required=<li>Role search pattern is required.</li>
error.userBase.required=<li>User base element is required.</li>
error.userPassword.required=<li>User Password is required.</li>
error.userPattern.required=<li>User pattern is required.</li>
error.userSearch.required=<li>User search is required.</li>
error.userPattern.userSearch.defined=<li>Either userPattern or userSearch must be specified not both.</li>
error.contextFactory.required=<li>Context Factory is required.</li>
error.connPassword.required=<li>Connection password is required.</li>
error.connURL.required=<li>Connection URL is required.</li>
error.connName.required=<li>Connection name is required.</li>
error.dataSourceName.required=<li>DataSource name is required.</li>
error.userCredCol.required=<li>User credential is required.</li>
error.userRoleTable.required=<li>User role table is required.</li>

# ---------- Server Module ----------
server.service.treeBuilder.subtreeNode=Service
server.service.treeBuilder.connector=Connector
server.service.treeBuilder.host=Host
server.service.treeBuilder.context=Context 
server.service.treeBuilder.loggerFor=Logger for {0}
server.service.treeBuilder.realmFor=Realm for {0} 
server.service.treeBuilder.logger=Logger
server.service.treeBuilder.realm=Realm

# ---------- Resources Module ----------
resources.treeBuilder.subtreeNode=Resources
resources.treeBuilder.datasources=Data Sources
resources.treeBuilder.mailsessions=Mail Sessions
resources.treeBuilder.resourcelinks=Resource Links
resources.env.entries=Environment Entries
resources.env.entry=Entry Name
resources.env.props=Environment Entry Properties
resources.env.override=Override Application Level Entries
resources.actions.env.create=Create New Env Entry
resources.actions.env.edit=Edit Environment Entry
resources.actions.env.delete=Delete Environment Entries
resources.actions.env.list=List Existing Entries
resources.datasrc.jdbc=JDBC Driver
resources.actions.datasrc=Data Sources
resources.actions.datasrc.create=Create New Data Source
resources.actions.datasrc.delete=Delete Data Sources
resources.actions.datasrc.edit=Edit Data Source
resources.datasrc.url=Data Source URL
resources.datasrc.jdbcclass=JDBC Driver Class
resources.datasrc.connections=Connections
resources.datasrc.active=Max. Active Connections
resources.datasrc.idle=Max. Idle Connections
resources.datasrc.wait=Max. Wait for Connection
resources.datasrc.validation=Validation Query
resources.datasrc.jndi=JNDI Name
resources.actions.mailsession=Mail Sessions
resources.actions.mailsession.create=Create New Mail Session
resources.actions.mailsession.delete=Delete Mail Session
resources.actions.mailsession.edit=Edit Mail Session
resources.mailsession.name=Name
resources.mailsession.mailhost=mail.smtp.host
resources.actions.resourcelk=Resource Links
resources.actions.resourcelk.create=Create New Resource Link
resources.actions.resourcelk.delete=Delete Resource Link
resources.actions.resourcelk.edit=Edit Resource Link
resources.resourcelk.name=Name
resources.resourcelk.global=Global
resources.resourcelk.type=Type
resources.error.name.required=<li>Name is required.</li>
resources.error.global.required=<li>Global is required.</li>
resources.error.type.required=<li>Type is required.</li>
resources.error.value.required=<li>Value is required.</li>
resources.error.value.mismatch=<li>Type and value do not seem to match.</li>
resources.error.entryType.invalid=<li>Entry Type not recognized.</li>
resources.error.entryType.notimpl=<li>Validation for this type not implemented yet.</li>
resources.error.url.required=<li>Data Source URL is required.</li>
resources.error.driverClass.required=<li>JDBC Driver Class is required.</li>
resources.error.active.required=<li>Max Active Connections is required.</li>
resources.error.idle.required=<li>Max Idle Connections is required.</li>
resources.error.wait.required=<li>Max Wait for a Connection is required.</li>
resources.error.mailhost.required=<li>mail.smtp.host is required.</li>
resources.integer.error=<li>Invalid integer error.</li>
resources.actions.userdb.create=Create New User Database
resources.actions.userdb.edit=Edit User Database
resources.actions.userdb.delete=Delete User Databases
resources.userdb.location=Location
resources.userdb.factory=Factory
resources.treeBuilder.databases=User Databases
resources.error.path.required=<li>Path is required</li>
resources.error.jndiName.required=<li>JNDI Name is required</li>
resources.invalid.name=<li>Invalid resource name - Name already exists.</li>
resources.invalid.env=<li>Invalid environment name - Name already exists.</li>

# ---------- User Database Module ----------
users.actions.group.create=Create New Group
users.actions.group.delete=Delete Existing Groups
users.actions.group.list=List Existing Groups
users.actions.role.create=Create New Role
users.actions.role.delete=Delete Existing Roles
users.actions.role.list=List Existing Roles
users.actions.user.create=Create New User
users.actions.user.delete=Delete Existing Users
users.actions.user.list=List Existing Users
users.deleteGroups.title=Delete Existing Groups
users.deleteRoles.title=Delete Existing Roles
users.deleteUsers.title=Delete Existing Users
users.error.attribute.get=Error retrieving attribute {0}
users.error.attribute.set=Error modifying attribute {0}
users.error.invoke=Error invoking operation {0}
users.error.groupname.required=Group Name is required
users.error.password.required=Password is required
users.error.quotes=Double quote characters are not allowed in field values
users.error.rolename.required=Role Name is required
users.error.select=Error selecting managed objects
users.error.token=Transaction submitted out of order
users.error.username.required=<li>User Name is required</li>
users.group.newGroup=Create New Group Properties
users.group.oldGroup=Edit Existing Group Properties
users.group.properties=Group Properties
users.list.description=Description
users.list.fullName=Full Name
users.list.groupname=Group Name
users.list.rolename=Role Name
users.list.username=User Name
users.listGroups.title=Groups List
users.listRoles.title=Roles List
users.listUsers.title=Users List
users.prompt.description=Description:
users.prompt.fullName=Full Name:
users.prompt.groupname=Group Name:
users.prompt.password=Password:
users.prompt.rolename=Role Name:
users.prompt.username=User Name:
users.role.newRole=Create New Role Properties
users.role.oldRole=Edit Existing Role Properties
users.role.properties=Role Properties
users.treeBuilder.groupsNode=Groups
users.treeBuilder.rolesNode=Roles
users.treeBuilder.subtreeNode=User Definition
users.treeBuilder.usersNode=Users
users.user.newUser=Create New User Properties
users.user.oldUser=Edit Existing User Properties
users.user.properties=User Properties
# ---------- -------------------- ----------
