Loading...
Searching...
No Matches
NavigineSdk.java
Go to the documentation of this file.
1package com.navigine.idl.java;
2
3import java.util.concurrent.atomic.AtomicBoolean;
4
22public abstract class NavigineSdk {
37 public abstract void setUserHash(String userHash);
38
53 public abstract void setServer(String server);
54
59 public abstract void reset();
60
76
92 public abstract NavigationManager getNavigationManager(LocationManager locationManager);
93
109 public abstract ZoneManager getZoneManager(NavigationManager navigationManager);
110
127 public abstract AsyncRouteManager getAsyncRouteManager(LocationManager locationManager, NavigationManager navigationManager);
128
145
149 public abstract String getErrorDescription(int errorCode);
150
151 public abstract LocationWindow createLocationWindow(com.navigine.view.PlatformView platformView);
152
170
177
194 public abstract RouteManager getRouteManager(LocationManager locationManager, NavigationManager navigationManager);
195
212
223 public abstract ResourceManager getResourceManager(LocationManager locationManager);
224
225 public abstract LocationEditManager getLocationEditManager(LocationManager locationManager);
226
227 public abstract BeaconProximityEstimator getBeaconProximityEstimator(LocationManager locationManager);
228
246 public abstract MqttSession getMqttSession(NavigationManager navigationManager);
247
263
278 public static NavigineSdk getInstance()
279 {
280 return CppProxy.getInstance();
281 }
282
297 public static String getVersion()
298 {
299 return CppProxy.getVersion();
300 }
301
316 public static String getDeviceId()
317 {
318 return CppProxy.getDeviceId();
319 }
320
326 public static String getUserAgent()
327 {
328 return CppProxy.getUserAgent();
329 }
330
345 public static long getRelativeTime()
346 {
347 return CppProxy.getRelativeTime();
348 }
349
350 private static final class CppProxy extends NavigineSdk
351 {
352 private final long nativeRef;
353 private final AtomicBoolean destroyed = new AtomicBoolean(false);
354
355 private CppProxy(long nativeRef)
356 {
357 if (nativeRef == 0) throw new RuntimeException("nativeRef is zero");
358 this.nativeRef = nativeRef;
359 }
360
361 private native void nativeDestroy(long nativeRef);
362 public void _djinni_private_destroy()
363 {
364 boolean destroyed = this.destroyed.getAndSet(true);
365 if (!destroyed) nativeDestroy(this.nativeRef);
366 }
367 protected void finalize() throws java.lang.Throwable
368 {
369 _djinni_private_destroy();
370 super.finalize();
371 }
372
373 // NavigineSdk methods
374
375 @Override
376 public void setUserHash(String userHash)
377 {
378 assert !this.destroyed.get() : "trying to use a destroyed object";
379 native_setUserHash(this.nativeRef, userHash);
380 }
381 private native void native_setUserHash(long _nativeRef, String userHash);
382
383 @Override
384 public void setServer(String server)
385 {
386 assert !this.destroyed.get() : "trying to use a destroyed object";
387 native_setServer(this.nativeRef, server);
388 }
389 private native void native_setServer(long _nativeRef, String server);
390
391 @Override
392 public void reset()
393 {
394 assert !this.destroyed.get() : "trying to use a destroyed object";
395 native_reset(this.nativeRef);
396 }
397 private native void native_reset(long _nativeRef);
398
399 @Override
400 public LocationManager getLocationManager()
401 {
402 assert !this.destroyed.get() : "trying to use a destroyed object";
403 return native_getLocationManager(this.nativeRef);
404 }
405 private native LocationManager native_getLocationManager(long _nativeRef);
406
407 @Override
408 public NavigationManager getNavigationManager(LocationManager locationManager)
409 {
410 assert !this.destroyed.get() : "trying to use a destroyed object";
411 return native_getNavigationManager(this.nativeRef, locationManager);
412 }
413 private native NavigationManager native_getNavigationManager(long _nativeRef, LocationManager locationManager);
414
415 @Override
416 public ZoneManager getZoneManager(NavigationManager navigationManager)
417 {
418 assert !this.destroyed.get() : "trying to use a destroyed object";
419 return native_getZoneManager(this.nativeRef, navigationManager);
420 }
421 private native ZoneManager native_getZoneManager(long _nativeRef, NavigationManager navigationManager);
422
423 @Override
424 public AsyncRouteManager getAsyncRouteManager(LocationManager locationManager, NavigationManager navigationManager)
425 {
426 assert !this.destroyed.get() : "trying to use a destroyed object";
427 return native_getAsyncRouteManager(this.nativeRef, locationManager, navigationManager);
428 }
429 private native AsyncRouteManager native_getAsyncRouteManager(long _nativeRef, LocationManager locationManager, NavigationManager navigationManager);
430
431 @Override
432 public NotificationManager getNotificationManager(LocationManager locationManager)
433 {
434 assert !this.destroyed.get() : "trying to use a destroyed object";
435 return native_getNotificationManager(this.nativeRef, locationManager);
436 }
437 private native NotificationManager native_getNotificationManager(long _nativeRef, LocationManager locationManager);
438
439 @Override
440 public String getErrorDescription(int errorCode)
441 {
442 assert !this.destroyed.get() : "trying to use a destroyed object";
443 return native_getErrorDescription(this.nativeRef, errorCode);
444 }
445 private native String native_getErrorDescription(long _nativeRef, int errorCode);
446
447 @Override
448 public LocationWindow createLocationWindow(com.navigine.view.PlatformView platformView)
449 {
450 assert !this.destroyed.get() : "trying to use a destroyed object";
451 return native_createLocationWindow(this.nativeRef, platformView);
452 }
453 private native LocationWindow native_createLocationWindow(long _nativeRef, com.navigine.view.PlatformView platformView);
454
455 @Override
456 public StorageManager getStorageManager()
457 {
458 assert !this.destroyed.get() : "trying to use a destroyed object";
459 return native_getStorageManager(this.nativeRef);
460 }
461 private native StorageManager native_getStorageManager(long _nativeRef);
462
463 @Override
464 public UserLocationLayer getUserLocationLayer(LocationWindow locationWindow)
465 {
466 assert !this.destroyed.get() : "trying to use a destroyed object";
467 return native_getUserLocationLayer(this.nativeRef, locationWindow);
468 }
469 private native UserLocationLayer native_getUserLocationLayer(long _nativeRef, LocationWindow locationWindow);
470
471 @Override
472 public RouteManager getRouteManager(LocationManager locationManager, NavigationManager navigationManager)
473 {
474 assert !this.destroyed.get() : "trying to use a destroyed object";
475 return native_getRouteManager(this.nativeRef, locationManager, navigationManager);
476 }
477 private native RouteManager native_getRouteManager(long _nativeRef, LocationManager locationManager, NavigationManager navigationManager);
478
479 @Override
480 public MeasurementManager getMeasurementManager(LocationManager locationManager)
481 {
482 assert !this.destroyed.get() : "trying to use a destroyed object";
483 return native_getMeasurementManager(this.nativeRef, locationManager);
484 }
485 private native MeasurementManager native_getMeasurementManager(long _nativeRef, LocationManager locationManager);
486
487 @Override
488 public ResourceManager getResourceManager(LocationManager locationManager)
489 {
490 assert !this.destroyed.get() : "trying to use a destroyed object";
491 return native_getResourceManager(this.nativeRef, locationManager);
492 }
493 private native ResourceManager native_getResourceManager(long _nativeRef, LocationManager locationManager);
494
495 @Override
496 public LocationEditManager getLocationEditManager(LocationManager locationManager)
497 {
498 assert !this.destroyed.get() : "trying to use a destroyed object";
499 return native_getLocationEditManager(this.nativeRef, locationManager);
500 }
501 private native LocationEditManager native_getLocationEditManager(long _nativeRef, LocationManager locationManager);
502
503 @Override
504 public BeaconProximityEstimator getBeaconProximityEstimator(LocationManager locationManager)
505 {
506 assert !this.destroyed.get() : "trying to use a destroyed object";
507 return native_getBeaconProximityEstimator(this.nativeRef, locationManager);
508 }
509 private native BeaconProximityEstimator native_getBeaconProximityEstimator(long _nativeRef, LocationManager locationManager);
510
511 @Override
512 public MqttSession getMqttSession(NavigationManager navigationManager)
513 {
514 assert !this.destroyed.get() : "trying to use a destroyed object";
515 return native_getMqttSession(this.nativeRef, navigationManager);
516 }
517 private native MqttSession native_getMqttSession(long _nativeRef, NavigationManager navigationManager);
518
519 @Override
520 public LocationListManager getLocationListManager()
521 {
522 assert !this.destroyed.get() : "trying to use a destroyed object";
523 return native_getLocationListManager(this.nativeRef);
524 }
525 private native LocationListManager native_getLocationListManager(long _nativeRef);
526
527 public static native NavigineSdk getInstance();
528
529 public static native String getVersion();
530
531 public static native String getDeviceId();
532
533 public static native String getUserAgent();
534
535 public static native long getRelativeTime();
536 }
537}