private Map<String, Object> getAppConfig(String site, String appType){ ApplicationEntity entity = entityService.getBySiteIdAndAppType(site, appType); return entity.getConfiguration(); }
@GET @Produces(MediaType.APPLICATION_JSON) public RESTResponse<Collection<ApplicationEntity>> getApplicationEntities(@QueryParam("siteId") String siteId) { return RESTResponse.async(() -> { if (siteId == null) { return entityService.findAll(); } else { return entityService.findBySiteId(siteId); } }).get(); }
@GET @Path("/{appUuid}") @Produces(MediaType.APPLICATION_JSON) public RESTResponse<ApplicationEntity> getApplicationEntityByUUID(@PathParam("appUuid") String appUuid) { return RESTResponse.async(() -> entityService.getByUUID(appUuid)).get(); }
private void registerAll() { Collection<ApplicationEntity> applicationEntities = applicationEntityService.findAll(); applicationEntities.forEach(this::register); }
@Override public ApplicationEntity stop(ApplicationOperations.StopOperation operation) throws ApplicationWrongStatusException { ApplicationEntity applicationEntity = applicationEntityService.getByUUIDOrAppId(operation.getUuid(), operation.getAppId()); ApplicationProvider<?> appProvider = applicationProviderService.getApplicationProviderByType(applicationEntity.getDescriptor().getType()); Application application = appProvider.getApplication(); }); applicationEntityService.delete(applicationEntity); applicationEntity.setStatus(ApplicationEntity.Status.STOPPING); return applicationEntityService.create(applicationEntity); } else { throw new ApplicationWrongStatusException("App: " + applicationEntity.getAppId() + " status is " + currentStatus + ", stop operation is not allowed.");
@DELETE @Path("/{siteId}") @Produces(MediaType.APPLICATION_JSON) public RESTResponse<SiteEntity> deleteSiteBySiteId(@PathParam("siteId") String siteId) { return RESTResponse.async(() -> { int appCount = entityService.findBySiteId(siteId).size(); if (appCount > 0) { throw new SiteDeleteException("This site has enabled applications, remove them first"); } return siteEntityService.deleteBySiteId(siteId); }).get(); }
@POST @Path("/{appUuid}") @Produces(MediaType.APPLICATION_JSON) public RESTResponse<ApplicationEntity> updateApplicationEntity(@PathParam("appUuid") String appUuid, ApplicationOperations.UpdateOperation updateOperation) { return RESTResponse.async(() -> { ApplicationEntity applicationEntity = new ApplicationEntity(); applicationEntity.setStatus(entityService.getByUUID(appUuid).getStatus()); applicationEntity.setUuid(appUuid); applicationEntity.setJarPath(updateOperation.getJarPath()); applicationEntity.setMode(updateOperation.getMode()); applicationEntity.setConfiguration(updateOperation.getConfiguration()); return entityService.update(applicationEntity); }).get(); }
@Override public ApplicationEntity uninstall(ApplicationOperations.UninstallOperation operation) throws ApplicationWrongStatusException { ApplicationEntity appEntity = applicationEntityService.getByUUIDOrAppId(operation.getUuid(), operation.getAppId()); ApplicationProvider<?> appProvider = applicationProviderService.getApplicationProviderByType(appEntity.getDescriptor().getType()); ApplicationAction appAction = new ApplicationAction(appProvider.getApplication(), appEntity, config, alertMetadataService); ApplicationEntity.Status currentStatus = appEntity.getStatus(); try { if (currentStatus == ApplicationEntity.Status.INITIALIZED || currentStatus == ApplicationEntity.Status.STOPPED) { // AfterUninstall Callback appAction.doUninstall(); appProvider.getApplicationListener().ifPresent((listener) -> { currentInjector.injectMembers(listener); listener.init(appEntity); listener.afterUninstall(); }); applicationHealthCheckService.unregister(appEntity); return applicationEntityService.delete(appEntity); } else { throw new ApplicationWrongStatusException("App: " + appEntity.getAppId() + " status is " + currentStatus + ", uninstall operation is not allowed"); } } catch (Throwable throwable) { LOGGER.error(throwable.getMessage(), throwable); throw throwable; } }
ApplicationEntity result = applicationEntityService.create(applicationEntity);
@Override protected void runOneIteration() throws Exception { LOG.info("Updating application status"); try { Collection<ApplicationEntity> applicationEntities = applicationEntityService.findAll(); if (applicationEntities.size() == 0) { LOG.info("No application installed yet"); return; } for (ApplicationEntity applicationEntity : applicationEntities) { if (applicationEntity.getDescriptor().isExecutable()) { updateApplicationEntityStatus(applicationEntity); } } LOG.info("Updated {} application status", applicationEntities.size()); } catch (Exception e) { LOG.error("Failed to update application status", e); } }
@Override public ApplicationEntity start(ApplicationOperations.StartOperation operation) throws ApplicationWrongStatusException { ApplicationEntity appEntity = applicationEntityService.getByUUIDOrAppId(operation.getUuid(), operation.getAppId()); ApplicationProvider<?> appProvider = applicationProviderService.getApplicationProviderByType(appEntity.getDescriptor().getType()); Application application = appProvider.getApplication(); applicationEntityService.delete(appEntity); appEntity.setStatus(ApplicationEntity.Status.STARTING); return applicationEntityService.create(appEntity); } else { throw new ApplicationWrongStatusException("App: " + appEntity.getAppId() + " status is " + currentStatus + " start operation is not allowed");
@DELETE @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) public RESTResponse<SiteEntity> deleteSiteByUUID(UUIDRequest uuidRequest) { return RESTResponse.async(() -> { int appCount = entityService.findBySiteId(siteEntityService.getByUUID(uuidRequest.getUuid()).getSiteId()).size(); if (appCount > 0) { throw new SiteDeleteException("This site has enabled applications, remove them first"); } return siteEntityService.deleteByUUID(uuidRequest.getUuid()); }).get(); }
private Map<String, Object> getAppConfig(String site, String appType){ ApplicationEntity entity = entityService.getBySiteIdAndAppType(site, appType); return entity.getConfiguration(); }
private Collection<String> loadSites(String appType) { Set<String> sites = new HashSet<>(); Collection<ApplicationEntity> apps = applicationEntityService.findAll(); for (ApplicationEntity app : apps) { if (app.getDescriptor().getType().equalsIgnoreCase(appType) && app.getStatus().equals(ApplicationEntity.Status.RUNNING)) { sites.add(app.getSite().getSiteId()); } } LOG.info("Detected {} sites where MR_HISTORY_JOB_APP is Running: {}", sites.size(), sites); return sites; }
private Map<String, Object> getAppConfig(String site, String appType) { ApplicationEntity entity = entityService.getBySiteIdAndAppType(site, appType); return entity.getConfiguration(); } }
int total = 0; Map<String, StreamDesc> latestStreamIdDescMap = new HashMap<>(); for (ApplicationEntity appEntity : applicationEntityService.findAll()) { List<StreamDesc> streamDescList = appEntity.getStreams(); if (streamDescList != null && streamDescList.size() > 0) {
private Map<String, Object> getAppConfig(String site, String appType){ ApplicationEntity entity = entityService.getBySiteIdAndAppType(site, appType); return entity.getConfiguration(); } }
private Map<String, Object> getAppConfig(String site, String appType){ ApplicationEntity entity = entityService.getBySiteIdAndAppType(site, appType); return entity.getConfiguration(); }
private Map<String, Object> getAppConfig(String site, String appType){ ApplicationEntity entity = entityService.getBySiteIdAndAppType(site, appType); return entity.getConfiguration(); }
private Map<String, Object> getAppConfig(String site, String appType){ ApplicationEntity entity = entityService.getBySiteIdAndAppType(site, appType); return entity.getConfiguration(); }