- @Override
- public void setDeviceInitializationPhaseHandler(final DeviceInitializationPhaseHandler handler) {
- deviceInitPhaseHandler = handler;
- }
-
- @Override
- public void onDeviceContextLevelUp(final DeviceInfo deviceInfo, final LifecycleService lifecycleService) throws Exception {
-
- final DeviceContext deviceContext = Preconditions.checkNotNull(lifecycleService.getDeviceContext());
-
- final RpcContext rpcContext = new RpcContextImpl(
- deviceInfo,
- rpcProviderRegistry,
- deviceContext.getMessageSpy(),
- maxRequestsQuota,
- deviceInfo.getNodeInstanceIdentifier(),
- deviceContext,
- extensionConverterProvider,
- convertorExecutor,
- notificationPublishService);
-
- Verify.verify(contexts.putIfAbsent(deviceInfo, rpcContext) == null, "RpcCtx still not closed for node {}", deviceInfo.getNodeId());
- lifecycleService.setRpcContext(rpcContext);
- rpcContext.setStatisticsRpcEnabled(isStatisticsRpcEnabled);
-
- // finish device initialization cycle back to DeviceManager
- deviceInitPhaseHandler.onDeviceContextLevelUp(deviceInfo, lifecycleService);
- }
-