Loading...
Searching...
No Matches
NavigineSdkExample.java
Go to the documentation of this file.
1package com.navigine.examples;
2
3import com.navigine.idl.java.*;
4
9public class NavigineSdkExample {
10
11 private NavigineSdk sdk;
12 private LocationManager locationManager;
13 private NavigationManager navigationManager;
14 private ZoneManager zoneManager;
15 private RouteManager routeManager;
16 private AsyncRouteManager asyncRouteManager;
17 private NotificationManager notificationManager;
18 private MeasurementManager measurementManager;
19 private LocationListManager locationListManager;
20 private StorageManager storageManager;
21 private MqttSession mqttSession;
22
24 initializeSdk();
25 }
26
30 private void initializeSdk() {
31 try {
32 // [java_NavigineSdk_getInstance]
33 // Get SDK instance
35 // [java_NavigineSdk_getInstance]
36
37 // [java_NavigineSdk_getVersion]
38 // Get SDK version
39 System.out.println("Navigine SDK Version: " + NavigineSdk.getVersion());
40 // [java_NavigineSdk_getVersion]
41
42 // [java_NavigineSdk_getDeviceId]
43 // Get device ID
44 System.out.println("Device ID: " + NavigineSdk.getDeviceId());
45 // [java_NavigineSdk_getDeviceId]
46
47 // [java_NavigineSdk_getRelativeTime]
48 // Get relative time
49 System.out.println("Relative Time: " + NavigineSdk.getRelativeTime());
50 // [java_NavigineSdk_getRelativeTime]
51
52 // [java_NavigineSdk_setUserHash]
53 // Set user hash (authorization token)
54 sdk.setUserHash("XXXX-XXXX-XXXX-XXXX");
55 // [java_NavigineSdk_setUserHash]
56
57
58 // [java_NavigineSdk_getUserAgent]
59 System.out.println("User-Agent: " + NavigineSdk.getUserAgent());
60 // [java_NavigineSdk_getUserAgent]
61
62 // [java_NavigineSdk_reset]
63 sdk.reset();
64 System.out.println("SDK reset to initial state");
65 // [java_NavigineSdk_reset]
66
67 // [java_NavigineSdk_setServer]
68 // Set server URL (optional)
69 sdk.setServer("https://custom.navigine.com");
70 // [java_NavigineSdk_setServer]
71
72 // Initialize managers
73 initializeManagers();
74
75 } catch (Exception e) {
76 System.err.println("SDK initialization error: " + e.getMessage());
77 }
78 }
79
83 private void initializeManagers() {
84 // [java_NavigineSdk_getLocationManager]
85 // Get LocationManager for working with locations
86 locationManager = sdk.getLocationManager();
87 if (locationManager != null) {
88 System.out.println("LocationManager successfully initialized");
89 }
90 // [java_NavigineSdk_getLocationManager]
91
92 // [java_NavigineSdk_getNavigationManager]
93 // Get NavigationManager for navigation
94 if (locationManager != null) {
95 navigationManager = sdk.getNavigationManager(locationManager);
96 if (navigationManager != null) {
97 System.out.println("NavigationManager successfully initialized");
98 }
99 }
100 // [java_NavigineSdk_getNavigationManager]
101
102 // [java_NavigineSdk_getZoneManager]
103 // Get ZoneManager for working with zones
104 if (navigationManager != null) {
105 zoneManager = sdk.getZoneManager(navigationManager);
106 if (zoneManager != null) {
107 System.out.println("ZoneManager successfully initialized");
108 }
109 }
110 // [java_NavigineSdk_getZoneManager]
111
112 // [java_NavigineSdk_getRouteManager]
113 // Get RouteManager for building routes
114 if (locationManager != null && navigationManager != null) {
115 routeManager = sdk.getRouteManager(locationManager, navigationManager);
116 if (routeManager != null) {
117 System.out.println("RouteManager successfully initialized");
118 }
119 }
120 // [java_NavigineSdk_getRouteManager]
121
122 // [java_NavigineSdk_getAsyncRouteManager]
123 // Get AsyncRouteManager for async route operations
124 if (locationManager != null && navigationManager != null) {
125 asyncRouteManager = sdk.getAsyncRouteManager(locationManager, navigationManager);
126 if (asyncRouteManager != null) {
127 System.out.println("AsyncRouteManager successfully initialized");
128 }
129 }
130 // [java_NavigineSdk_getAsyncRouteManager]
131
132 // [java_NavigineSdk_getNotificationManager]
133 // Get NotificationManager for notifications
134 if (locationManager != null) {
135 notificationManager = sdk.getNotificationManager(locationManager);
136 if (notificationManager != null) {
137 System.out.println("NotificationManager successfully initialized");
138 }
139 }
140 // [java_NavigineSdk_getNotificationManager]
141
142 // [java_NavigineSdk_getMeasurementManager]
143 // Get MeasurementManager for measurements
144 if (locationManager != null) {
145 measurementManager = sdk.getMeasurementManager(locationManager);
146 if (measurementManager != null) {
147 System.out.println("MeasurementManager successfully initialized");
148 }
149 }
150 // [java_NavigineSdk_getMeasurementManager]
151
152 // [java_NavigineSdk_getLocationListManager]
153 // Get LocationListManager for location list operations
154 locationListManager = sdk.getLocationListManager();
155 if (locationListManager != null) {
156 System.out.println("LocationListManager successfully initialized");
157 }
158 // [java_NavigineSdk_getLocationListManager]
159
160 // [java_NavigineSdk_getStorageManager]
161 // Get StorageManager for working with storages
162 storageManager = sdk.getStorageManager();
163 if (storageManager != null) {
164 System.out.println("StorageManager successfully initialized");
165 }
166 // [java_NavigineSdk_getStorageManager]
167
168 // [java_NavigineSdk_getMqttSession]
169 // Get MqttSession for publishing position data via MQTT
170 if (navigationManager != null) {
171 mqttSession = sdk.getMqttSession(navigationManager);
172 if (mqttSession != null) {
173 System.out.println("MqttSession successfully initialized");
174 }
175 }
176 // [java_NavigineSdk_getMqttSession]
177 }
178
182 public void printSdkInfo() {
183 System.out.println("=== Navigine SDK Information ===");
184 System.out.println("SDK Version: " + NavigineSdk.getVersion());
185 System.out.println("Device ID: " + NavigineSdk.getDeviceId());
186 System.out.println("Relative Time: " + NavigineSdk.getRelativeTime());
187 System.out.println("LocationManager: " + (locationManager != null ? "available" : "unavailable"));
188 System.out.println("NavigationManager: " + (navigationManager != null ? "available" : "unavailable"));
189 System.out.println("ZoneManager: " + (zoneManager != null ? "available" : "unavailable"));
190 System.out.println("RouteManager: " + (routeManager != null ? "available" : "unavailable"));
191 System.out.println("AsyncRouteManager: " + (asyncRouteManager != null ? "available" : "unavailable"));
192 System.out.println("NotificationManager: " + (notificationManager != null ? "available" : "unavailable"));
193 System.out.println("MeasurementManager: " + (measurementManager != null ? "available" : "unavailable"));
194 System.out.println("LocationListManager: " + (locationListManager != null ? "available" : "unavailable"));
195 System.out.println("StorageManager: " + (storageManager != null ? "available" : "unavailable"));
196 System.out.println("MqttSession: " + (mqttSession != null ? "available" : "unavailable"));
197 }
198
203 System.out.println("=== Manager Usage Demonstration ===");
204
205 // LocationManager usage example
206 if (locationManager != null) {
207 System.out.println("LocationManager ready for location operations");
208 // Add code here for loading locations, working with them, etc.
209 }
210
211 // NavigationManager usage example
212 if (navigationManager != null) {
213 System.out.println("NavigationManager ready for positioning");
214 // Add code here for getting position, setting up listeners, etc.
215 }
216
217 // ZoneManager usage example
218 if (zoneManager != null) {
219 System.out.println("ZoneManager ready for zone operations");
220 // Add code here for setting up zones, handling enter/exit events, etc.
221 }
222
223 // RouteManager usage example
224 if (routeManager != null) {
225 System.out.println("RouteManager ready for route building");
226 // Add code here for building routes, setting destination points, etc.
227 }
228
229 // AsyncRouteManager usage example
230 if (asyncRouteManager != null) {
231 System.out.println("AsyncRouteManager ready for async route operations");
232 // Add code here for creating routing sessions, etc.
233 }
234
235 // NotificationManager usage example
236 if (notificationManager != null) {
237 System.out.println("NotificationManager ready for notifications");
238 // Add code here for setting up beacon notifications, etc.
239 }
240
241 // MeasurementManager usage example
242 if (measurementManager != null) {
243 System.out.println("MeasurementManager ready for measurements");
244 // Add code here for managing measurement generators, etc.
245 }
246
247 // LocationListManager usage example
248 if (locationListManager != null) {
249 System.out.println("LocationListManager ready for location list operations");
250 // Add code here for getting available locations list, etc.
251 }
252
253 // StorageManager usage example
254 if (storageManager != null) {
255 System.out.println("StorageManager ready for storage operations");
256 // Add code here for creating storages, managing data, etc.
257 }
258
259 // MqttSession usage example
260 if (mqttSession != null) {
261 System.out.println("MqttSession ready for publishing position data via MQTT");
262 // Add code here for connecting to MQTT broker, publishing positions, etc.
263 }
264 }
265
269 public static void main(String[] args) {
271 example.printSdkInfo();
272 example.demonstrateManagersUsage();
273 }
274}