public CompletableFuture<Response> register(Long userId, PluginReqisterQuery pluginReqisterQuery, PluginUpdate pluginUpdate, String authorization) { validateSubscription(pluginReqisterQuery); checkAuthServiceAvailable(); return persistPlugin(pluginUpdate, pluginReqisterQuery.constructFilterString(), userId).thenApply(pluginVO -> { JwtTokenVO jwtTokenVO = createPluginTokens(pluginVO.getTopicName(), authorization); JsonObject response = createTokenResponse(pluginVO.getTopicName(), jwtTokenVO); return ResponseFactory.response(CREATED, response, PLUGIN_SUBMITTED); }); }
if (plugin != null && plugin.getTopicName() != null) { return plugin.getTopicName().equals(targetDomainObject);
@Transactional public CompletableFuture<Response> delete(PluginVO existingPlugin) { pluginService.delete(existingPlugin.getId()); CompletableFuture<com.devicehive.shim.api.Response> future = new CompletableFuture<>(); if (existingPlugin.getSubscriptionId() != null) { PluginUnsubscribeRequest request = new PluginUnsubscribeRequest(existingPlugin.getSubscriptionId(), existingPlugin.getTopicName()); rpcClient.call(Request.newBuilder() .withBody(request) .build(), new ResponseConsumer(future)); return future.thenApply(response -> ResponseFactory.response(NO_CONTENT)); } else { return CompletableFuture.completedFuture(ResponseFactory.response(NO_CONTENT)); } }
request.setSubscriptionId(subscriptionId); existingPlugin.setSubscriptionId(subscriptionId); ((PluginSubscribeRequest) request).setTopicName(existingPlugin.getTopicName()); request = new PluginUnsubscribeRequest(existingPlugin.getSubscriptionId(), existingPlugin.getTopicName()); existingPlugin.setSubscriptionId(null);
public static Plugin convertToEntity(PluginVO vo) { Plugin entity = null; if (vo != null) { entity = new Plugin(); entity.setId(vo.getId()); entity.setName(vo.getName()); entity.setDescription(vo.getDescription()); entity.setTopicName(vo.getTopicName()); entity.setFilter(vo.getFilter()); entity.setStatus(vo.getStatus()); entity.setSubscriptionId(vo.getSubscriptionId()); entity.setUserId(vo.getUserId()); entity.setParameters(vo.getParameters()); } return entity; } }