Skip to content
This repository was archived by the owner on Feb 6, 2022. It is now read-only.
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 28 additions & 3 deletions src/main/java/org/jitsi/dnssec/R.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,24 +11,49 @@
package org.jitsi.dnssec;

import java.text.MessageFormat;
import java.util.MissingResourceException;
import java.util.ResourceBundle;

/**
* Utility class to retrieve messages from {@link ResourceBundle}s.
*/
public final class R {
private static ResourceBundle rb = ResourceBundle.getBundle("messages");

private static ResourceBundle rb = null;

private R() {
}

/**
* Programmatically set the ResourceBundle to be used.
*
* @param resourceBundle ResourceBundle to Be Used.
*/
public static void setBundle(ResourceBundle resourceBundle) {
R.rb = resourceBundle;
}

/**
* Gets a translated message.
* @param key The message key to retrieve.
*
* @param key The message key to retrieve.
* @param values The values that fill placeholders in the message.
* @return The formatted message.
*/
public static String get(String key, Object... values) {
return MessageFormat.format(rb.getString(key), values);
try {
if (R.rb == null) {
rb = ResourceBundle.getBundle("messages");
}
return MessageFormat.format(rb.getString(key), values);
}
catch (MissingResourceException e) {
StringBuilder sb = new StringBuilder(key);
for (Object val : values) {
sb.append(":");
sb.append(val.toString());
}
return sb.toString();
}
}
}