Refactor StringGenerator bindings

Make every dependency request explicit on what encoding is used. Also get rid of InjectRule in XjcToDomainResourceConverterTest.

Random number generator providers are separated to secure and insecure ones. The insecure ones must be explicitly requested (usually for use cases where security is not of concern, for better speed).

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=217921422
This commit is contained in:
jianglai 2018-10-19 13:27:42 -07:00
parent 1a4aae8f7d
commit 2020dcb50f
15 changed files with 84 additions and 116 deletions

View file

@ -17,16 +17,13 @@ package google.registry.util;
import static com.google.common.base.Preconditions.checkArgument;
import java.security.SecureRandom;
import javax.inject.Inject;
import javax.inject.Named;
/** Random string generator. */
public class RandomStringGenerator extends StringGenerator {
private final SecureRandom random;
@Inject
public RandomStringGenerator(@Named("alphabetBase64") String alphabet, SecureRandom random) {
public RandomStringGenerator(String alphabet, SecureRandom random) {
super(alphabet);
this.random = random;
}