/** * Computes a full user agent header of the form: * {@code MapboxJava/1.2.0 Mac OS X/10.11.5 (x86_64)}. * * @param clientAppName Application Name * @return {@link String} representing the header user agent * @since 1.0.0 */ public static String getHeaderUserAgent(@Nullable String clientAppName) { String osName = System.getProperty("os.name"); String osVersion = System.getProperty("os.version"); String osArch = System.getProperty("os.arch"); if (TextUtils.isEmpty(osName) || TextUtils.isEmpty(osVersion) || TextUtils.isEmpty(osArch)) { return Constants.HEADER_USER_AGENT; } else { return getHeaderUserAgent(clientAppName, osName, osVersion, osArch); } }
@Test public void getHeaderUserAgent_formatsStringCorrectly() throws Exception { assertTrue(ApiCallHelper.getHeaderUserAgent( null).startsWith(Constants.HEADER_USER_AGENT)); assertTrue(ApiCallHelper.getHeaderUserAgent( "AppName").startsWith("AppName")); }
@Override protected Call<RouteTileVersionsResponse> initializeCall() { return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), accessToken() ); }
@Override protected Call<RouteTileVersionsResponse> initializeCall() { return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), accessToken() ); }
@Override protected Call<RouteTileVersionsResponse> initializeCall() { return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), accessToken() ); }
@Test public void getHeaderUserAgent_nonAsciiCharsRemoved() { String osName = "os.name"; String osVersion = "os.version"; String osArch = "os.arch"; String userAgent = String.format( Locale.US, "%s %s/%s (%s)", Constants.HEADER_USER_AGENT, osName, osVersion, osArch); String userAgentWithExtraChars = ApiCallHelper.getHeaderUserAgent(null, osName + '\u00A9', // copyright osVersion + '\u00AE', // Registered Sign osArch + '\u2122'); // TM Assert.assertEquals(userAgent, userAgentWithExtraChars); } }
@Override protected Call<ResponseBody> initializeCall() { return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), formatBoundingBox(boundingBox()), version(), accessToken() ); }
@Override protected Call<ResponseBody> initializeCall() { return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), formatBoundingBox(boundingBox()), version(), accessToken() ); }
@Override protected Call<ResponseBody> initializeCall() { return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), formatBoundingBox(boundingBox()), version(), accessToken() ); }
@Override protected Call<GeocodingResponse> initializeCall() { if (mode().contains(GeocodingCriteria.MODE_PLACES_PERMANENT)) { throw new IllegalArgumentException("Use getBatchCall() for batch calls."); } return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), mode(), query(), accessToken(), country(), proximity(), geocodingTypes(), autocomplete(), bbox(), limit(), languages(), reverseMode()); }
@Override protected Call<GeocodingResponse> initializeCall() { if (mode().contains(GeocodingCriteria.MODE_PLACES_PERMANENT)) { throw new IllegalArgumentException("Use getBatchCall() for batch calls."); } return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), mode(), query(), accessToken(), country(), proximity(), geocodingTypes(), autocomplete(), bbox(), limit(), languages(), reverseMode()); }
@Override protected Call<GeocodingResponse> initializeCall() { if (mode().contains(GeocodingCriteria.MODE_PLACES_PERMANENT)) { throw new IllegalArgumentException("Use getBatchCall() for batch calls."); } return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), mode(), query(), accessToken(), country(), proximity(), geocodingTypes(), autocomplete(), bbox(), limit(), languages(), reverseMode()); }
@Override protected Call<MatrixResponse> initializeCall() { return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), user(), profile(), coordinates(), accessToken(), annotations(), approaches(), destinations(), sources()); }
@Override protected Call<MatrixResponse> initializeCall() { return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), user(), profile(), coordinates(), accessToken(), annotations(), approaches(), destinations(), sources()); }
@Override protected Call<MatrixResponse> initializeCall() { return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), user(), profile(), coordinates(), accessToken(), annotations(), approaches(), destinations(), sources()); }
private Call<List<GeocodingResponse>> getBatchCall() { // No need to recreate it if (batchCall != null) { return batchCall; } if (mode().equals(GeocodingCriteria.MODE_PLACES)) { throw new ServicesException("Use getCall() for non-batch calls."); } batchCall = getService().getBatchCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), mode(), query(), accessToken(), country(), proximity(), geocodingTypes(), autocomplete(), bbox(), limit(), languages(), reverseMode()); return batchCall; }
private Call<List<GeocodingResponse>> getBatchCall() { // No need to recreate it if (batchCall != null) { return batchCall; } if (mode().equals(GeocodingCriteria.MODE_PLACES)) { throw new ServicesException("Use getCall() for non-batch calls."); } batchCall = getService().getBatchCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), mode(), query(), accessToken(), country(), proximity(), geocodingTypes(), autocomplete(), bbox(), limit(), languages(), reverseMode()); return batchCall; }
private Call<List<GeocodingResponse>> getBatchCall() { // No need to recreate it if (batchCall != null) { return batchCall; } if (mode().equals(GeocodingCriteria.MODE_PLACES)) { throw new ServicesException("Use getCall() for non-batch calls."); } batchCall = getService().getBatchCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), mode(), query(), accessToken(), country(), proximity(), geocodingTypes(), autocomplete(), bbox(), limit(), languages(), reverseMode()); return batchCall; }
@Override protected Call<OptimizationResponse> initializeCall() { return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), user(), profile(), coordinates(), accessToken(), roundTrip(), radiuses(), bearings(), steps(), overview(), geometries(), annotations(), destination(), source(), language(), distributions()); }
@Override protected Call<OptimizationResponse> initializeCall() { return getService().getCall( ApiCallHelper.getHeaderUserAgent(clientAppName()), user(), profile(), coordinates(), accessToken(), roundTrip(), radiuses(), bearings(), steps(), overview(), geometries(), annotations(), destination(), source(), language(), distributions()); }