/** * Clears the internal state of the formatter, so it can be reused. */ public void clear() { currentOutput = ""; accruedInput.setLength(0); accruedInputWithoutFormatting.setLength(0); formattingTemplate.setLength(0); lastMatchPosition = 0; currentFormattingPattern = ""; prefixBeforeNationalNumber.setLength(0); nationalPrefixExtracted = ""; nationalNumber.setLength(0); ableToFormat = true; inputHasFormatting = false; positionToRemember = 0; originalPosition = 0; isCompleteNumber = false; isExpectingCountryCallingCode = false; possibleFormats.clear(); shouldAddSpaceAfterNationalPrefix = false; if (!currentMetadata.equals(defaultMetadata)) { currentMetadata = getMetadataForRegion(defaultCountry); } }