/** * @return In default implementation we just return 'Healthy'. */ @Override public Future<String> getHealth() { return new CompletedFuture("Healthy", null); }
@Override public Future<? extends SpecProducer> getProducer(){ return new CompletedFuture(this.inMemorySpecProducer, null); }
@Override public Future<String> getDescription() { return new CompletedFuture<>("SimpleSpecExecutorInstance with URI: " + specExecutorInstanceUri, null); }
@Override public Future<Config> getConfig() { return new CompletedFuture<>(_config, null); }
@Override public Future<? extends SpecProducer> getProducer() { return new CompletedFuture<>(this.specProducer, null); }
@Override public Future<? extends SpecProducer> getProducer() { return new CompletedFuture<>(this.azkabanSpecProducer, null); }
@Override public Future<Config> getConfig() { return new CompletedFuture(this.config, null); }
@Override public Future<String> getDescription() { return new CompletedFuture("InMemory SpecExecutor", null); }
@Override public Future<String> getHealth() { return new CompletedFuture<>("Healthy", null); }
@Override public Future<? extends Map<ServiceNode, ServiceNode>> getCapabilities() { return new CompletedFuture(this.capabilities, null); }
@Override public Future<String> getDescription() { return new CompletedFuture<>("SimpleSpecExecutorInstance with URI: " + specExecutorInstanceUri, null); }
@Override public Future<? extends List<Spec>> listSpecs() { return new CompletedFuture<>(Lists.newArrayList(provisionedSpecs.values()), null); } }
@Override public Future<?> deleteSpec(URI deletedSpecURI, Properties headers) { if (!provisionedSpecs.containsKey(deletedSpecURI)) { throw new RuntimeException("Spec not found: " + deletedSpecURI); } provisionedSpecs.remove(deletedSpecURI); log.info(String.format("Deleted Spec with Uri: %s from this executor.", deletedSpecURI)); return new CompletedFuture(Boolean.TRUE, null); }
@Override public Future<String> getDescription() { return new CompletedFuture<>("SimpleSpecExecutorInstance with URI: " + specExecutorInstanceUri, null); }
@Override public Future<? extends SpecProducer> getProducer() { return new CompletedFuture<>(this.azkabanSpecProducer, null); }
@Override public Future<Config> getConfig() { return new CompletedFuture<>(config, null); }
@Override public Future<String> getHealth() { return new CompletedFuture<>("Healthy", null); }
@Override public Future<?> addSpec(Spec addedSpec) { provisionedSpecs.put(addedSpec.getUri(), addedSpec); log.info(String.format("Added Spec: %s with Uri: %s for execution on this executor.", addedSpec, addedSpec.getUri())); return new CompletedFuture(Boolean.TRUE, null); }
@Override public Future<?> updateSpec(Spec updatedSpec) { // Re-create project AzkabanProjectConfig azkabanProjectConfig = new AzkabanProjectConfig((JobSpec) updatedSpec); try { updateExistingAzkabanProject(_sessionId, azkabanProjectConfig); } catch (IOException e) { throw new RuntimeException("Issue in setting up Azkaban project.", e); } return new CompletedFuture<>(_config, null); }
@Override public Future<?> updateSpec(Spec updatedSpec) { if (!provisionedSpecs.containsKey(updatedSpec.getUri())) { throw new RuntimeException("Spec not found: " + updatedSpec.getUri()); } provisionedSpecs.put(updatedSpec.getUri(), updatedSpec); log.info(String.format("Updated Spec: %s with Uri: %s for execution on this executor.", updatedSpec, updatedSpec.getUri())); return new CompletedFuture(Boolean.TRUE, null); }