@@ -246,6 +246,7 @@ private Map<Field,Object> retrieveCityGeoData(InetAddress ipAddress) throws GeoI
246246 Postal postal = response .getPostal ();
247247 Subdivision subdivision = response .getMostSpecificSubdivision ();
248248 Map <Field , Object > geoData = new EnumMap <>(Field .class );
249+ Network network = response .getTraits ().getNetwork ();
249250
250251 // if location is empty, there is no point populating geo data
251252 // and most likely all other fields are empty as well
@@ -344,6 +345,11 @@ private Map<Field,Object> retrieveCityGeoData(InetAddress ipAddress) throws GeoI
344345 geoData .put (Field .LONGITUDE , lon );
345346 }
346347 break ;
348+ case NETWORK :
349+ if (network != null ) {
350+ geoData .put (Field .NETWORK , network .toString ());
351+ }
352+ break ;
347353 }
348354 }
349355
@@ -397,6 +403,7 @@ private Map<Field, Object> retrieveIspGeoData(InetAddress ipAddress) throws GeoI
397403 } catch (NullPointerException e ) {
398404 throw new GeoIp2InvalidCustomFieldException (e );
399405 }
406+ Network network = response .getNetwork ();
400407
401408 Map <Field , Object > geoData = new EnumMap <>(Field .class );
402409 for (Field desiredField : this .desiredFields ) {
@@ -405,7 +412,7 @@ private Map<Field, Object> retrieveIspGeoData(InetAddress ipAddress) throws GeoI
405412 geoData .put (Field .IP , ipAddress .getHostAddress ());
406413 break ;
407414 case AUTONOMOUS_SYSTEM_NUMBER :
408- Integer asn = response .getAutonomousSystemNumber ();
415+ Long asn = response .getAutonomousSystemNumber ();
409416 if (asn != null ) {
410417 geoData .put (desiredField , asn );
411418 }
@@ -428,6 +435,11 @@ private Map<Field, Object> retrieveIspGeoData(InetAddress ipAddress) throws GeoI
428435 geoData .put (Field .ORGANIZATION , org );
429436 }
430437 break ;
438+ case NETWORK :
439+ if (network != null ) {
440+ geoData .put (Field .NETWORK , network .toString ());
441+ }
442+ break ;
431443 }
432444 }
433445
@@ -450,7 +462,7 @@ private Map<Field, Object> retrieveAsnGeoData(InetAddress ipAddress) throws GeoI
450462 geoData .put (Field .IP , ipAddress .getHostAddress ());
451463 break ;
452464 case AUTONOMOUS_SYSTEM_NUMBER :
453- Integer asn = response .getAutonomousSystemNumber ();
465+ Long asn = response .getAutonomousSystemNumber ();
454466 if (asn != null ) {
455467 geoData .put (Field .AUTONOMOUS_SYSTEM_NUMBER , asn );
456468 }
@@ -507,7 +519,7 @@ private Map<Field, Object> retrieveEnterpriseGeoData(InetAddress ipAddress) thro
507519 Continent continent = response .getContinent ();
508520 Subdivision subdivision = response .getMostSpecificSubdivision ();
509521
510- Integer asn = response .getTraits ().getAutonomousSystemNumber ();
522+ Long asn = response .getTraits ().getAutonomousSystemNumber ();
511523 String organizationName = response .getTraits ().getAutonomousSystemOrganization ();
512524 Network network = response .getTraits ().getNetwork ();
513525
@@ -620,6 +632,7 @@ private Map<Field, Object> retrieveAnonymousIpGeoData(final InetAddress ipAddres
620632 boolean isAnonymous = response .isAnonymous ();
621633 boolean isPublicProxy = response .isPublicProxy ();
622634 boolean isResidentialProxy = response .isResidentialProxy ();
635+ Network network = response .getNetwork ();
623636
624637 for (Field desiredField : this .desiredFields ) {
625638 switch (desiredField ) {
@@ -644,6 +657,11 @@ private Map<Field, Object> retrieveAnonymousIpGeoData(final InetAddress ipAddres
644657 case RESIDENTIAL_PROXY :
645658 geoData .put (desiredField , isResidentialProxy );
646659 break ;
660+ case NETWORK :
661+ if (network != null ) {
662+ geoData .put (Field .NETWORK , network .toString ());
663+ }
664+ break ;
647665 }
648666 }
649667 return geoData ;
0 commit comments