@Override
 public boolean handle(Object data) {
   super.handle(data);
   if (data == null) {
     return false;
   }
   try {
     PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
     IndicatorParameters indParameters = this.getParameters();
     TextParameters textParameters =
         indParameters == null ? null : indParameters.getTextParameter();
     String country = IndicatorHelper.getCountryCodeByParameter(textParameters);
     PhoneNumber phoneNumeber = phoneUtil.parse(data.toString(), country);
     // It only checks the length of phone numbers. In particular, it doesn't check starting digits
     // of the
     // number.
     if (phoneUtil.isPossibleNumber(phoneNumeber)) {
       this.possiblePhoneCount++;
       if (checkMustStoreCurrentRow() || this.checkMustStoreCurrentRow(drillDownValueCount)) {
         this.mustStoreRow = true;
       }
     }
   } catch (NumberParseException e) {
     return false;
   }
   return true;
 }