Browse Source

eliminate unnecessary variables, slight refactoring

pull/880/head
David Yonge-Mallo 10 years ago
parent
commit
d5fafdc80c
6 changed files with 24 additions and 27 deletions
  1. +4
    -6
      java/libphonenumber/src/com/google/i18n/phonenumbers/MultiFileMetadataSourceImpl.java
  2. +4
    -7
      java/libphonenumber/src/com/google/i18n/phonenumbers/SingleFileMetadataSourceImpl.java
  3. +7
    -6
      java/libphonenumber/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java
  4. +4
    -3
      tools/java/common/src/com/google/i18n/phonenumbers/BuildMetadataFromXml.java
  5. +1
    -1
      tools/java/cpp-build/pom.xml
  6. +4
    -4
      tools/java/java-build/src/com/google/i18n/phonenumbers/BuildMetadataProtoFromXml.java

+ 4
- 6
java/libphonenumber/src/com/google/i18n/phonenumbers/MultiFileMetadataSourceImpl.java View File

@ -18,7 +18,6 @@ package com.google.i18n.phonenumbers;
import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadataCollection;
import com.google.protobuf.nano.CodedInputByteBufferNano;
import java.io.IOException;
import java.io.InputStream;
@ -104,8 +103,8 @@ final class MultiFileMetadataSourceImpl implements MetadataSource {
throw new IllegalStateException("missing metadata: " + fileName);
}
try {
ObjectInputStream in = new ObjectInputStream(source);
PhoneMetadataCollection metadataCollection = loadMetadataAndCloseInput(in);
PhoneMetadataCollection metadataCollection =
loadMetadataAndCloseInput(new ObjectInputStream(source));
PhoneMetadata[] metadataList = metadataCollection.metadata;
if (metadataList.length == 0) {
logger.log(Level.SEVERE, "empty metadata: " + fileName);
@ -140,9 +139,8 @@ final class MultiFileMetadataSourceImpl implements MetadataSource {
PhoneMetadataCollection metadataCollection = new PhoneMetadataCollection();
try {
CodedInputByteBufferNano byteBuffer = MetadataManager.convertStreamToByteBuffer(source,
MULTI_FILE_BUFFER_SIZE);
metadataCollection.mergeFrom(byteBuffer);
metadataCollection.mergeFrom(
MetadataManager.convertStreamToByteBuffer(source, MULTI_FILE_BUFFER_SIZE));
} catch (IOException e) {
logger.log(Level.WARNING, "error reading input (ignored)", e);
} finally {


+ 4
- 7
java/libphonenumber/src/com/google/i18n/phonenumbers/SingleFileMetadataSourceImpl.java View File

@ -18,7 +18,6 @@ package com.google.i18n.phonenumbers;
import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadataCollection;
import com.google.protobuf.nano.CodedInputByteBufferNano;
import java.io.IOException;
import java.io.InputStream;
@ -101,10 +100,9 @@ final class SingleFileMetadataSourceImpl implements MetadataSource {
logger.log(Level.SEVERE, "missing metadata: " + fileName);
throw new IllegalStateException("missing metadata: " + fileName);
}
ObjectInputStream in = null;
try {
in = new ObjectInputStream(source);
PhoneMetadataCollection metadataCollection = loadMetadataAndCloseInput(in);
PhoneMetadataCollection metadataCollection =
loadMetadataAndCloseInput(new ObjectInputStream(source));
PhoneMetadata[] metadataList = metadataCollection.metadata;
if (metadataList.length == 0) {
logger.log(Level.SEVERE, "empty metadata: " + fileName);
@ -140,9 +138,8 @@ final class SingleFileMetadataSourceImpl implements MetadataSource {
PhoneMetadataCollection metadataCollection = new PhoneMetadataCollection();
try {
CodedInputByteBufferNano byteBuffer = MetadataManager.convertStreamToByteBuffer(
source, SINGLE_FILE_BUFFER_SIZE);
metadataCollection.mergeFrom(byteBuffer);
metadataCollection.mergeFrom(
MetadataManager.convertStreamToByteBuffer(source, SINGLE_FILE_BUFFER_SIZE));
} catch (IOException e) {
logger.log(Level.WARNING, "error reading input (ignored)", e);
} finally {


+ 7
- 6
java/libphonenumber/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java View File

@ -132,6 +132,12 @@ public class PhoneNumberUtilTest extends TestMetadataTestCase {
assertNull(phoneUtil.getMetadataForNonGeographicalRegion(-1));
}
private boolean exactlySame(PhoneNumberDesc first, PhoneNumberDesc second) {
return first.nationalNumberPattern.equals(second.nationalNumberPattern) &&
first.possibleNumberPattern.equals(second.possibleNumberPattern) &&
first.exampleNumber.equals(second.exampleNumber);
}
public void testGetInstanceLoadUSMetadata() {
PhoneMetadata metadata = phoneUtil.getMetadataForRegion(RegionCode.US);
assertEquals("US", metadata.id);
@ -145,12 +151,7 @@ public class PhoneNumberUtilTest extends TestMetadataTestCase {
assertEquals("[13-689]\\d{9}|2[0-35-9]\\d{8}",
metadata.generalDesc.nationalNumberPattern);
assertEquals("\\d{7}(?:\\d{3})?", metadata.generalDesc.possibleNumberPattern);
assertTrue(metadata.generalDesc.nationalNumberPattern.equals(
metadata.fixedLine.nationalNumberPattern));
assertTrue(metadata.generalDesc.possibleNumberPattern.equals(
metadata.fixedLine.possibleNumberPattern));
assertTrue(metadata.generalDesc.exampleNumber.equals(
metadata.fixedLine.exampleNumber));
assertTrue(exactlySame(metadata.generalDesc, metadata.fixedLine));
assertEquals("\\d{10}", metadata.tollFree.possibleNumberPattern);
assertEquals("900\\d{7}", metadata.premiumRate.nationalNumberPattern);
// No shared-cost data is available, so it should be initialised to "NA".


+ 4
- 3
tools/java/common/src/com/google/i18n/phonenumbers/BuildMetadataFromXml.java View File

@ -141,7 +141,7 @@ public class BuildMetadataFromXml {
} else {
// For most countries, there will be only one region code for the country calling code.
List<String> listWithRegionCode = new ArrayList<String>(1);
if (!regionCode.isEmpty()) { // For alternate formats, there are no region codes at all.
if (!regionCode.equals("")) { // For alternate formats, there are no region codes at all.
listWithRegionCode.add(regionCode);
}
countryCodeToRegionCodeMap.put(countryCode, listWithRegionCode);
@ -261,7 +261,7 @@ public class BuildMetadataFromXml {
hasExplicitIntlFormatDefined = true;
}
if (!intlFormat.format.isEmpty()) {
if (!intlFormat.format.equals("")) {
List<NumberFormat> formatList =
new ArrayList<NumberFormat>(Arrays.asList(metadata.intlNumberFormat));
formatList.add(intlFormat);
@ -325,7 +325,7 @@ public class BuildMetadataFromXml {
format.nationalPrefixFormattingRule = nationalPrefixFormattingRule;
}
if (!format.nationalPrefixFormattingRule.isEmpty()) {
if (!format.nationalPrefixFormattingRule.equals("")) {
if (numberFormatElement.hasAttribute(NATIONAL_PREFIX_OPTIONAL_WHEN_FORMATTING)) {
format.nationalPrefixOptionalWhenFormatting =
Boolean.valueOf(numberFormatElement.getAttribute(
@ -430,6 +430,7 @@ public class BuildMetadataFromXml {
numberDesc.possibleNumberPattern = "NA";
return numberDesc;
}
// TODO: Refactor into a utility class.
if (!generalDesc.nationalNumberPattern.equals("")) {
numberDesc.nationalNumberPattern = generalDesc.nationalNumberPattern;
}


+ 1
- 1
tools/java/cpp-build/pom.xml View File

@ -42,7 +42,7 @@
</goals>
<configuration>
<sources>
<!-- Also add ../common/src/ which contains BuildMetadataFromXml.java -->
<!-- Add ../common/src/ which contains BuildMetadataFromXml.java -->
<source>../common/src/</source>
<!-- Add ../../../java/libphonenumber/src/ to make Phonemetadata.java available to
the source directories. -->


+ 4
- 4
tools/java/java-build/src/com/google/i18n/phonenumbers/BuildMetadataProtoFromXml.java View File

@ -179,15 +179,15 @@ public class BuildMetadataProtoFromXml extends Command {
if (regionCode.equals("001") || regionCode.isEmpty()) {
regionCode = Integer.toString(metadata.countryCode);
}
PhoneMetadataCollection singleCollection = new PhoneMetadataCollection();
singleCollection.metadata = new PhoneMetadata[1];
singleCollection.metadata[0] = metadata;
PhoneMetadataCollection outMetadataCollection = new PhoneMetadataCollection();
outMetadataCollection.metadata = new PhoneMetadata[1];
outMetadataCollection.metadata[0] = metadata;
FileOutputStream outputForRegion = new FileOutputStream(filePrefix + "_" + regionCode);
ObjectOutputStream out = new ObjectOutputStream(outputForRegion);
byte[] outputArray = new byte[MULTI_FILE_BUFFER_SIZE];
CodedOutputByteBufferNano outputBufferNano =
CodedOutputByteBufferNano.newInstance(outputArray);
singleCollection.writeTo(outputBufferNano);
outMetadataCollection.writeTo(outputBufferNano);
out.write(outputArray, 0, outputBufferNano.position());
out.flush();
out.close();


Loading…
Cancel
Save