1 /* 2 * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 package sun.security.tools.keytool; 27 28 /** 29 * <p> This class represents the <code>ResourceBundle</code> 30 * for the keytool. 31 * 32 */ 33 public class Resources extends java.util.ListResourceBundle { 34 35 private static final Object[][] contents = { 36 {"NEWLINE", "\n"}, 37 {"STAR", 38 "*******************************************"}, 39 {"STARNN", 40 "*******************************************\n\n"}, 41 42 // keytool: Help part 43 {".OPTION.", " [OPTION]..."}, 44 {"Options.", "Options:"}, 45 {"Use.keytool.help.for.all.available.commands", 46 "Use \"keytool -help\" for all available commands"}, 47 {"Key.and.Certificate.Management.Tool", 48 "Key and Certificate Management Tool"}, 49 {"Commands.", "Commands:"}, 50 {"Use.keytool.command.name.help.for.usage.of.command.name", 51 "Use \"keytool -command_name -help\" for usage of command_name.\n" + 52 "Use the -conf <url> option to specify a pre-configured options file."}, 53 // keytool: help: commands 54 {"Generates.a.certificate.request", 55 "Generates a certificate request"}, //-certreq 56 {"Changes.an.entry.s.alias", 57 "Changes an entry's alias"}, //-changealias 58 {"Deletes.an.entry", 59 "Deletes an entry"}, //-delete 60 {"Exports.certificate", 61 "Exports certificate"}, //-exportcert 62 {"Generates.a.key.pair", 63 "Generates a key pair"}, //-genkeypair 64 {"Generates.a.secret.key", 65 "Generates a secret key"}, //-genseckey 66 {"Generates.certificate.from.a.certificate.request", 67 "Generates certificate from a certificate request"}, //-gencert 68 {"Generates.CRL", "Generates CRL"}, //-gencrl 69 {"Generated.keyAlgName.secret.key", 70 "Generated {0} secret key"}, //-genseckey 71 {"Generated.keysize.bit.keyAlgName.secret.key", 72 "Generated {0}-bit {1} secret key"}, //-genseckey 73 {"Imports.entries.from.a.JDK.1.1.x.style.identity.database", 74 "Imports entries from a JDK 1.1.x-style identity database"}, //-identitydb 75 {"Imports.a.certificate.or.a.certificate.chain", 76 "Imports a certificate or a certificate chain"}, //-importcert 77 {"Imports.a.password", 78 "Imports a password"}, //-importpass 79 {"Imports.one.or.all.entries.from.another.keystore", 80 "Imports one or all entries from another keystore"}, //-importkeystore 81 {"Clones.a.key.entry", 82 "Clones a key entry"}, //-keyclone 83 {"Changes.the.key.password.of.an.entry", 84 "Changes the key password of an entry"}, //-keypasswd 85 {"Lists.entries.in.a.keystore", 86 "Lists entries in a keystore"}, //-list 87 {"Prints.the.content.of.a.certificate", 88 "Prints the content of a certificate"}, //-printcert 89 {"Prints.the.content.of.a.certificate.request", 90 "Prints the content of a certificate request"}, //-printcertreq 91 {"Prints.the.content.of.a.CRL.file", 92 "Prints the content of a CRL file"}, //-printcrl 93 {"Generates.a.self.signed.certificate", 94 "Generates a self-signed certificate"}, //-selfcert 95 {"Changes.the.store.password.of.a.keystore", 96 "Changes the store password of a keystore"}, //-storepasswd 97 // keytool: help: options 98 {"alias.name.of.the.entry.to.process", 99 "alias name of the entry to process"}, //-alias 100 {"destination.alias", 101 "destination alias"}, //-destalias 102 {"destination.key.password", 103 "destination key password"}, //-destkeypass 104 {"destination.keystore.name", 105 "destination keystore name"}, //-destkeystore 106 {"destination.keystore.password.protected", 107 "destination keystore password protected"}, //-destprotected 108 {"destination.keystore.provider.name", 109 "destination keystore provider name"}, //-destprovidername 110 {"destination.keystore.password", 111 "destination keystore password"}, //-deststorepass 112 {"destination.keystore.type", 113 "destination keystore type"}, //-deststoretype 114 {"distinguished.name", 115 "distinguished name"}, //-dname 116 {"X.509.extension", 117 "X.509 extension"}, //-ext 118 {"output.file.name", 119 "output file name"}, //-file and -outfile 120 {"input.file.name", 121 "input file name"}, //-file and -infile 122 {"key.algorithm.name", 123 "key algorithm name"}, //-keyalg 124 {"key.password", 125 "key password"}, //-keypass 126 {"key.bit.size", 127 "key bit size"}, //-keysize 128 {"keystore.name", 129 "keystore name"}, //-keystore 130 {"access.the.cacerts.keystore", 131 "access the cacerts keystore"}, // -cacerts 132 {"warning.cacerts.option", 133 "Warning: use -cacerts option to access cacerts keystore"}, 134 {"new.password", 135 "new password"}, //-new 136 {"do.not.prompt", 137 "do not prompt"}, //-noprompt 138 {"password.through.protected.mechanism", 139 "password through protected mechanism"}, //-protected 140 141 // The following 2 values should span 2 lines, the first for the 142 // option itself, the second for its -providerArg value. 143 {"addprovider.option", 144 "add security provider by name (e.g. SunPKCS11)\n" + 145 "configure argument for -addprovider"}, //-addprovider 146 {"provider.class.option", 147 "add security provider by fully-qualified class name\n" + 148 "configure argument for -providerclass"}, //-providerclass 149 150 {"provider.name", 151 "provider name"}, //-providername 152 {"provider.classpath", 153 "provider classpath"}, //-providerpath 154 {"output.in.RFC.style", 155 "output in RFC style"}, //-rfc 156 {"signature.algorithm.name", 157 "signature algorithm name"}, //-sigalg 158 {"source.alias", 159 "source alias"}, //-srcalias 160 {"source.key.password", 161 "source key password"}, //-srckeypass 162 {"source.keystore.name", 163 "source keystore name"}, //-srckeystore 164 {"source.keystore.password.protected", 165 "source keystore password protected"}, //-srcprotected 166 {"source.keystore.provider.name", 167 "source keystore provider name"}, //-srcprovidername 168 {"source.keystore.password", 169 "source keystore password"}, //-srcstorepass 170 {"source.keystore.type", 171 "source keystore type"}, //-srcstoretype 172 {"SSL.server.host.and.port", 173 "SSL server host and port"}, //-sslserver 174 {"signed.jar.file", 175 "signed jar file"}, //=jarfile 176 {"certificate.validity.start.date.time", 177 "certificate validity start date/time"}, //-startdate 178 {"keystore.password", 179 "keystore password"}, //-storepass 180 {"keystore.type", 181 "keystore type"}, //-storetype 182 {"trust.certificates.from.cacerts", 183 "trust certificates from cacerts"}, //-trustcacerts 184 {"verbose.output", 185 "verbose output"}, //-v 186 {"validity.number.of.days", 187 "validity number of days"}, //-validity 188 {"Serial.ID.of.cert.to.revoke", 189 "Serial ID of cert to revoke"}, //-id 190 // keytool: Running part 191 {"keytool.error.", "keytool error: "}, 192 {"Illegal.option.", "Illegal option: "}, 193 {"Illegal.value.", "Illegal value: "}, 194 {"Unknown.password.type.", "Unknown password type: "}, 195 {"Cannot.find.environment.variable.", 196 "Cannot find environment variable: "}, 197 {"Cannot.find.file.", "Cannot find file: "}, 198 {"Command.option.flag.needs.an.argument.", "Command option {0} needs an argument."}, 199 {"Warning.Different.store.and.key.passwords.not.supported.for.PKCS12.KeyStores.Ignoring.user.specified.command.value.", 200 "Warning: Different store and key passwords not supported for PKCS12 KeyStores. Ignoring user-specified {0} value."}, 201 {"the.keystore.or.storetype.option.cannot.be.used.with.the.cacerts.option", 202 "The -keystore or -storetype option cannot be used with the -cacerts option"}, 203 {".keystore.must.be.NONE.if.storetype.is.{0}", 204 "-keystore must be NONE if -storetype is {0}"}, 205 {"Too.many.retries.program.terminated", 206 "Too many retries, program terminated"}, 207 {".storepasswd.and.keypasswd.commands.not.supported.if.storetype.is.{0}", 208 "-storepasswd and -keypasswd commands not supported if -storetype is {0}"}, 209 {".keypasswd.commands.not.supported.if.storetype.is.PKCS12", 210 "-keypasswd commands not supported if -storetype is PKCS12"}, 211 {".keypass.and.new.can.not.be.specified.if.storetype.is.{0}", 212 "-keypass and -new can not be specified if -storetype is {0}"}, 213 {"if.protected.is.specified.then.storepass.keypass.and.new.must.not.be.specified", 214 "if -protected is specified, then -storepass, -keypass, and -new must not be specified"}, 215 {"if.srcprotected.is.specified.then.srcstorepass.and.srckeypass.must.not.be.specified", 216 "if -srcprotected is specified, then -srcstorepass and -srckeypass must not be specified"}, 217 {"if.keystore.is.not.password.protected.then.storepass.keypass.and.new.must.not.be.specified", 218 "if keystore is not password protected, then -storepass, -keypass, and -new must not be specified"}, 219 {"if.source.keystore.is.not.password.protected.then.srcstorepass.and.srckeypass.must.not.be.specified", 220 "if source keystore is not password protected, then -srcstorepass and -srckeypass must not be specified"}, 221 {"Illegal.startdate.value", "Illegal startdate value"}, 222 {"Validity.must.be.greater.than.zero", 223 "Validity must be greater than zero"}, 224 {"provclass.not.a.provider", "%s not a provider"}, 225 {"provider.name.not.found", "Provider named \"%s\" not found"}, 226 {"provider.class.not.found", "Provider \"%s\" not found"}, 227 {"Usage.error.no.command.provided", "Usage error: no command provided"}, 228 {"Source.keystore.file.exists.but.is.empty.", "Source keystore file exists, but is empty: "}, 229 {"Please.specify.srckeystore", "Please specify -srckeystore"}, 230 {"Must.not.specify.both.v.and.rfc.with.list.command", 231 "Must not specify both -v and -rfc with 'list' command"}, 232 {"Key.password.must.be.at.least.6.characters", 233 "Key password must be at least 6 characters"}, 234 {"New.password.must.be.at.least.6.characters", 235 "New password must be at least 6 characters"}, 236 {"Keystore.file.exists.but.is.empty.", 237 "Keystore file exists, but is empty: "}, 238 {"Keystore.file.does.not.exist.", 239 "Keystore file does not exist: "}, 240 {"Must.specify.destination.alias", "Must specify destination alias"}, 241 {"Must.specify.alias", "Must specify alias"}, 242 {"Keystore.password.must.be.at.least.6.characters", 243 "Keystore password must be at least 6 characters"}, 244 {"Enter.the.password.to.be.stored.", 245 "Enter the password to be stored: "}, 246 {"Enter.keystore.password.", "Enter keystore password: "}, 247 {"Enter.source.keystore.password.", "Enter source keystore password: "}, 248 {"Enter.destination.keystore.password.", "Enter destination keystore password: "}, 249 {"Keystore.password.is.too.short.must.be.at.least.6.characters", 250 "Keystore password is too short - must be at least 6 characters"}, 251 {"Unknown.Entry.Type", "Unknown Entry Type"}, 252 {"Too.many.failures.Alias.not.changed", "Too many failures. Alias not changed"}, 253 {"Entry.for.alias.alias.successfully.imported.", 254 "Entry for alias {0} successfully imported."}, 255 {"Entry.for.alias.alias.not.imported.", "Entry for alias {0} not imported."}, 256 {"Problem.importing.entry.for.alias.alias.exception.Entry.for.alias.alias.not.imported.", 257 "Problem importing entry for alias {0}: {1}.\nEntry for alias {0} not imported."}, 258 {"Import.command.completed.ok.entries.successfully.imported.fail.entries.failed.or.cancelled", 259 "Import command completed: {0} entries successfully imported, {1} entries failed or cancelled"}, 260 {"Warning.Overwriting.existing.alias.alias.in.destination.keystore", 261 "Warning: Overwriting existing alias {0} in destination keystore"}, 262 {"Existing.entry.alias.alias.exists.overwrite.no.", 263 "Existing entry alias {0} exists, overwrite? [no]: "}, 264 {"Too.many.failures.try.later", "Too many failures - try later"}, 265 {"Certification.request.stored.in.file.filename.", 266 "Certification request stored in file <{0}>"}, 267 {"Submit.this.to.your.CA", "Submit this to your CA"}, 268 {"if.alias.not.specified.destalias.and.srckeypass.must.not.be.specified", 269 "if alias not specified, destalias and srckeypass must not be specified"}, 270 {"The.destination.pkcs12.keystore.has.different.storepass.and.keypass.Please.retry.with.destkeypass.specified.", 271 "The destination pkcs12 keystore has different storepass and keypass. Please retry with -destkeypass specified."}, 272 {"Certificate.stored.in.file.filename.", 273 "Certificate stored in file <{0}>"}, 274 {"Certificate.reply.was.installed.in.keystore", 275 "Certificate reply was installed in keystore"}, 276 {"Certificate.reply.was.not.installed.in.keystore", 277 "Certificate reply was not installed in keystore"}, 278 {"Certificate.was.added.to.keystore", 279 "Certificate was added to keystore"}, 280 {"Certificate.was.not.added.to.keystore", 281 "Certificate was not added to keystore"}, 282 {".Storing.ksfname.", "[Storing {0}]"}, 283 {"alias.has.no.public.key.certificate.", 284 "{0} has no public key (certificate)"}, 285 {"Cannot.derive.signature.algorithm", 286 "Cannot derive signature algorithm"}, 287 {"Alias.alias.does.not.exist", 288 "Alias <{0}> does not exist"}, 289 {"Alias.alias.has.no.certificate", 290 "Alias <{0}> has no certificate"}, 291 {"Key.pair.not.generated.alias.alias.already.exists", 292 "Key pair not generated, alias <{0}> already exists"}, 293 {"Generating.keysize.bit.keyAlgName.key.pair.and.self.signed.certificate.sigAlgName.with.a.validity.of.validality.days.for", 294 "Generating {0} bit {1} key pair and self-signed certificate ({2}) with a validity of {3} days\n\tfor: {4}"}, 295 {"Enter.key.password.for.alias.", "Enter key password for <{0}>"}, 296 {".RETURN.if.same.as.keystore.password.", 297 "\t(RETURN if same as keystore password): "}, 298 {"Key.password.is.too.short.must.be.at.least.6.characters", 299 "Key password is too short - must be at least 6 characters"}, 300 {"Too.many.failures.key.not.added.to.keystore", 301 "Too many failures - key not added to keystore"}, 302 {"Destination.alias.dest.already.exists", 303 "Destination alias <{0}> already exists"}, 304 {"Password.is.too.short.must.be.at.least.6.characters", 305 "Password is too short - must be at least 6 characters"}, 306 {"Too.many.failures.Key.entry.not.cloned", 307 "Too many failures. Key entry not cloned"}, 308 {"key.password.for.alias.", "key password for <{0}>"}, 309 {"Keystore.entry.for.id.getName.already.exists", 310 "Keystore entry for <{0}> already exists"}, 311 {"Creating.keystore.entry.for.id.getName.", 312 "Creating keystore entry for <{0}> ..."}, 313 {"No.entries.from.identity.database.added", 314 "No entries from identity database added"}, 315 {"Alias.name.alias", "Alias name: {0}"}, 316 {"Creation.date.keyStore.getCreationDate.alias.", 317 "Creation date: {0,date}"}, 318 {"alias.keyStore.getCreationDate.alias.", 319 "{0}, {1,date}, "}, 320 {"alias.", "{0}, "}, 321 {"Entry.type.type.", "Entry type: {0}"}, 322 {"Certificate.chain.length.", "Certificate chain length: "}, 323 {"Certificate.i.1.", "Certificate[{0,number,integer}]:"}, 324 {"Certificate.fingerprint.SHA.256.", "Certificate fingerprint (SHA-256): "}, 325 {"Keystore.type.", "Keystore type: "}, 326 {"Keystore.provider.", "Keystore provider: "}, 327 {"Your.keystore.contains.keyStore.size.entry", 328 "Your keystore contains {0,number,integer} entry"}, 329 {"Your.keystore.contains.keyStore.size.entries", 330 "Your keystore contains {0,number,integer} entries"}, 331 {"Failed.to.parse.input", "Failed to parse input"}, 332 {"Empty.input", "Empty input"}, 333 {"Not.X.509.certificate", "Not X.509 certificate"}, 334 {"alias.has.no.public.key", "{0} has no public key"}, 335 {"alias.has.no.X.509.certificate", "{0} has no X.509 certificate"}, 336 {"New.certificate.self.signed.", "New certificate (self-signed):"}, 337 {"Reply.has.no.certificates", "Reply has no certificates"}, 338 {"Certificate.not.imported.alias.alias.already.exists", 339 "Certificate not imported, alias <{0}> already exists"}, 340 {"Input.not.an.X.509.certificate", "Input not an X.509 certificate"}, 341 {"Certificate.already.exists.in.keystore.under.alias.trustalias.", 342 "Certificate already exists in keystore under alias <{0}>"}, 343 {"Do.you.still.want.to.add.it.no.", 344 "Do you still want to add it? [no]: "}, 345 {"Certificate.already.exists.in.system.wide.CA.keystore.under.alias.trustalias.", 346 "Certificate already exists in system-wide CA keystore under alias <{0}>"}, 347 {"Do.you.still.want.to.add.it.to.your.own.keystore.no.", 348 "Do you still want to add it to your own keystore? [no]: "}, 349 {"Trust.this.certificate.no.", "Trust this certificate? [no]: "}, 350 {"YES", "YES"}, 351 {"New.prompt.", "New {0}: "}, 352 {"Passwords.must.differ", "Passwords must differ"}, 353 {"Re.enter.new.prompt.", "Re-enter new {0}: "}, 354 {"Re.enter.password.", "Re-enter password: "}, 355 {"Re.enter.new.password.", "Re-enter new password: "}, 356 {"They.don.t.match.Try.again", "They don't match. Try again"}, 357 {"Enter.prompt.alias.name.", "Enter {0} alias name: "}, 358 {"Enter.new.alias.name.RETURN.to.cancel.import.for.this.entry.", 359 "Enter new alias name\t(RETURN to cancel import for this entry): "}, 360 {"Enter.alias.name.", "Enter alias name: "}, 361 {".RETURN.if.same.as.for.otherAlias.", 362 "\t(RETURN if same as for <{0}>)"}, 363 {".PATTERN.printX509Cert", 364 "Owner: {0}\nIssuer: {1}\nSerial number: {2}\nValid from: {3} until: {4}\nCertificate fingerprints:\n\t SHA1: {5}\n\t SHA256: {6}\nSignature algorithm name: {7}\nSubject Public Key Algorithm: {8} ({9,number,#})\nVersion: {10}"}, 365 {"What.is.your.first.and.last.name.", 366 "What is your first and last name?"}, 367 {"What.is.the.name.of.your.organizational.unit.", 368 "What is the name of your organizational unit?"}, 369 {"What.is.the.name.of.your.organization.", 370 "What is the name of your organization?"}, 371 {"What.is.the.name.of.your.City.or.Locality.", 372 "What is the name of your City or Locality?"}, 373 {"What.is.the.name.of.your.State.or.Province.", 374 "What is the name of your State or Province?"}, 375 {"What.is.the.two.letter.country.code.for.this.unit.", 376 "What is the two-letter country code for this unit?"}, 377 {"Is.name.correct.", "Is {0} correct?"}, 378 {"no", "no"}, 379 {"yes", "yes"}, 380 {"y", "y"}, 381 {".defaultValue.", " [{0}]: "}, 382 {"Alias.alias.has.no.key", 383 "Alias <{0}> has no key"}, 384 {"Alias.alias.references.an.entry.type.that.is.not.a.private.key.entry.The.keyclone.command.only.supports.cloning.of.private.key", 385 "Alias <{0}> references an entry type that is not a private key entry. The -keyclone command only supports cloning of private key entries"}, 386 387 {".WARNING.WARNING.WARNING.", 388 "***************** WARNING WARNING WARNING *****************"}, 389 {"Signer.d.", "Signer #%d:"}, 390 {"Timestamp.", "Timestamp:"}, 391 {"Signature.", "Signature:"}, 392 {"CRLs.", "CRLs:"}, 393 {"Certificate.owner.", "Certificate owner: "}, 394 {"Not.a.signed.jar.file", "Not a signed jar file"}, 395 {"No.certificate.from.the.SSL.server", 396 "No certificate from the SSL server"}, 397 398 {".The.integrity.of.the.information.stored.in.your.keystore.", 399 "* The integrity of the information stored in your keystore *\n" + 400 "* has NOT been verified! In order to verify its integrity, *\n" + 401 "* you must provide your keystore password. *"}, 402 {".The.integrity.of.the.information.stored.in.the.srckeystore.", 403 "* The integrity of the information stored in the srckeystore*\n" + 404 "* has NOT been verified! In order to verify its integrity, *\n" + 405 "* you must provide the srckeystore password. *"}, 406 407 {"Certificate.reply.does.not.contain.public.key.for.alias.", 408 "Certificate reply does not contain public key for <{0}>"}, 409 {"Incomplete.certificate.chain.in.reply", 410 "Incomplete certificate chain in reply"}, 411 {"Certificate.chain.in.reply.does.not.verify.", 412 "Certificate chain in reply does not verify: "}, 413 {"Top.level.certificate.in.reply.", 414 "Top-level certificate in reply:\n"}, 415 {".is.not.trusted.", "... is not trusted. "}, 416 {"Install.reply.anyway.no.", "Install reply anyway? [no]: "}, 417 {"NO", "NO"}, 418 {"Public.keys.in.reply.and.keystore.don.t.match", 419 "Public keys in reply and keystore don't match"}, 420 {"Certificate.reply.and.certificate.in.keystore.are.identical", 421 "Certificate reply and certificate in keystore are identical"}, 422 {"Failed.to.establish.chain.from.reply", 423 "Failed to establish chain from reply"}, 424 {"n", "n"}, 425 {"Wrong.answer.try.again", "Wrong answer, try again"}, 426 {"Secret.key.not.generated.alias.alias.already.exists", 427 "Secret Key not generated, alias <{0}> already exists"}, 428 {"Please.provide.keysize.for.secret.key.generation", 429 "Please provide -keysize for secret key generation"}, 430 431 {"verified.by.s.in.s", "Verified by %s in %s"}, 432 {"warning.not.verified.make.sure.keystore.is.correct", 433 "WARNING: not verified. Make sure -keystore is correct."}, 434 435 {"Extensions.", "Extensions: "}, 436 {".Empty.value.", "(Empty value)"}, 437 {"Extension.Request.", "Extension Request:"}, 438 {"PKCS.10.Certificate.Request.Version.1.0.Subject.s.Public.Key.s.format.s.key.", 439 "PKCS #10 Certificate Request (Version 1.0)\n" + 440 "Subject: %s\nPublic Key: %s format %s key\n"}, 441 {"Unknown.keyUsage.type.", "Unknown keyUsage type: "}, 442 {"Unknown.extendedkeyUsage.type.", "Unknown extendedkeyUsage type: "}, 443 {"Unknown.AccessDescription.type.", "Unknown AccessDescription type: "}, 444 {"Unrecognized.GeneralName.type.", "Unrecognized GeneralName type: "}, 445 {"This.extension.cannot.be.marked.as.critical.", 446 "This extension cannot be marked as critical. "}, 447 {"Odd.number.of.hex.digits.found.", "Odd number of hex digits found: "}, 448 {"Unknown.extension.type.", "Unknown extension type: "}, 449 {"command.{0}.is.ambiguous.", "command {0} is ambiguous:"} 450 }; 451 452 453 /** 454 * Returns the contents of this <code>ResourceBundle</code>. 455 * 456 * <p> 457 * 458 * @return the contents of this <code>ResourceBundle</code>. 459 */ 460 @Override 461 public Object[][] getContents() { 462 return contents; 463 } 464 }