Skip to content

Commit 45cb5e4

Browse files
Create new class ParsingOptions
There is a new class called PrasingOptions. With it we can replace old parsing methodes such as keepRawInput or defaultRegion.
1 parent 809f889 commit 45cb5e4

File tree

2 files changed

+13
-16
lines changed

2 files changed

+13
-16
lines changed

java/libphonenumber/src/com/google/i18n/phonenumbers/ParsingOptions.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,7 @@ public class ParsingOptions {
3030
public boolean hasDefaultRegion() { return hasDefaultRegion; }
3131
public String getDefaultRegion() { return defaultRegion_; }
3232
public ParsingOptions setDefaultRegion(String value) {
33-
if (value == null) {
34-
throw new NullPointerException();
35-
}
36-
hasDefaultRegion = true;
33+
hasDefaultRegion = (value != null);
3734
defaultRegion_ = value;
3835
return this;
3936
}

java/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3142,6 +3142,10 @@ private boolean checkRegionForParsing(CharSequence numberToParse, String default
31423142
public PhoneNumber parse(CharSequence numberToParse, String defaultRegion)
31433143
throws NumberParseException {
31443144
PhoneNumber phoneNumber = new PhoneNumber();
3145+
parseWithOptions(
3146+
numberToParse,
3147+
new ParsingOptions().setDefaultRegion(defaultRegion),
3148+
phoneNumber);
31453149
parseWithOptions(
31463150
numberToParse,
31473151
new ParsingOptions().setDefaultRegion(defaultRegion),
@@ -3161,6 +3165,10 @@ public void parse(CharSequence numberToParse, String defaultRegion, PhoneNumber
31613165
numberToParse,
31623166
new ParsingOptions().setDefaultRegion(defaultRegion),
31633167
phoneNumber);
3168+
parseWithOptions(
3169+
numberToParse,
3170+
new ParsingOptions().setDefaultRegion(defaultRegion),
3171+
phoneNumber);
31643172
}
31653173

31663174
/**
@@ -3182,6 +3190,10 @@ public void parse(CharSequence numberToParse, String defaultRegion, PhoneNumber
31823190
public PhoneNumber parseAndKeepRawInput(CharSequence numberToParse, String defaultRegion)
31833191
throws NumberParseException {
31843192
PhoneNumber phoneNumber = new PhoneNumber();
3193+
parseWithOptions(
3194+
numberToParse,
3195+
new ParsingOptions().setKeepRawInput(true).setDefaultRegion(defaultRegion),
3196+
phoneNumber);
31853197
parseWithOptions(
31863198
numberToParse,
31873199
new ParsingOptions().setKeepRawInput(true).setDefaultRegion(defaultRegion),
@@ -3249,18 +3261,6 @@ public void parseWithOptions(CharSequence numberToParse, ParsingOptions options,
32493261
parseHelper(numberToParse, options.getDefaultRegion(), options.isKeepRawInput(), true, phoneNumber);
32503262
}
32513263

3252-
public PhoneNumber parseWithOptions(CharSequence numberToParse, ParsingOptions options)
3253-
throws NumberParseException {
3254-
PhoneNumber phoneNumber = new PhoneNumber();
3255-
parseHelper(numberToParse, options.getDefaultRegion(), options.hasKeepRawInput(), options.hasDefaultRegion(), phoneNumber);
3256-
return phoneNumber;
3257-
}
3258-
3259-
public void parseWithOptions(CharSequence numberToParse, ParsingOptions options, PhoneNumber phoneNumber)
3260-
throws NumberParseException {
3261-
parseHelper(numberToParse, options.getDefaultRegion(), options.hasKeepRawInput(), options.hasDefaultRegion(), phoneNumber);
3262-
}
3263-
32643264
/**
32653265
* Returns an iterable over all {@link PhoneNumberMatch PhoneNumberMatches} in {@code text}. This
32663266
* is a shortcut for {@link #findNumbers(CharSequence, String, Leniency, long)

0 commit comments

Comments
 (0)