public abstract class AbstractJobProxy extends java.lang.Object implements JobProxy
JobProxy interface with the default, cluster-agnostic,
implementations. Subclasses are expected to override these default methods where necessary.| Modifier and Type | Field and Description |
|---|---|
protected JobsResourceConfig |
config |
| Constructor and Description |
|---|
AbstractJobProxy(JobsResourceConfig config)
Required constructor.
|
| Modifier and Type | Method and Description |
|---|---|
static JobProxy |
fromFactory(JobsResourceConfig config)
Creates a new JobProxy instance from the factory class specified in the config.
|
protected abstract java.util.Set<JobInstance> |
getAllJobInstances() |
java.util.List<Job> |
getAllJobStatuses() |
protected JobStatus |
getJobSamzaStatus(JobInstance jobInstance)
Convenience method to get the Samza job status from the name and id.
|
Job |
getJobStatus(JobInstance jobInstance) |
protected abstract JobStatusProvider |
getJobStatusProvider() |
boolean |
jobExists(JobInstance jobInstance) |
protected final JobsResourceConfig config
public AbstractJobProxy(JobsResourceConfig config)
config - the config containing the installations path.public static JobProxy fromFactory(JobsResourceConfig config)
config - the config containing the job proxy factory property.public java.util.List<Job> getAllJobStatuses() throws java.io.IOException, java.lang.InterruptedException
getAllJobStatuses in interface JobProxyJob for each Samza job instance installed on this host.java.io.IOException - if there was a problem executing the command to get the status.java.lang.InterruptedException - if the thread was interrupted while waiting for the status result.protected JobStatus getJobSamzaStatus(JobInstance jobInstance) throws java.io.IOException, java.lang.InterruptedException
jobInstance - the instance of the job.java.io.IOException - if there was a problem executing the command to get the status.java.lang.InterruptedException - if the thread was interrupted while waiting for the status result.public Job getJobStatus(JobInstance jobInstance) throws java.io.IOException, java.lang.InterruptedException
getJobStatus in interface JobProxyjobInstance - the instance of the job for which the status is needed.Job containing
the status for the job specified by jobName and jobId.java.io.IOException - if there was a problem executing the command to get the status.java.lang.InterruptedException - if the thread was interrupted while waiting for the status result.public boolean jobExists(JobInstance jobInstance)
protected abstract JobStatusProvider getJobStatusProvider()
JobStatusProvider to use in retrieving the job status.protected abstract java.util.Set<JobInstance> getAllJobInstances()