CassandraJobStore implements JobStore { @Override public Observable<Job<?>> retrieveArchivedJob(String jobId) { Observable<Job> action = retrieveEntityById(jobId, Job.class, retrieveArchivedJobStatement) .switchIfEmpty(retrieveEntityById(jobId, Job.class, retrieveActiveJobStatement) .filter(job -> job.getStatus().getState() == JobState.Finished) ) .switchIfEmpty(Observable.error(JobStoreException.jobDoesNotExist(jobId))); return (Observable) action; } @Inject  CassandraJobStore(CassandraStoreConfiguration configuration,
                             Session session,
                             TitusRuntime titusRuntime);   CassandraJobStore(CassandraStoreConfiguration configuration,
                      Session session,
                      TitusRuntime titusRuntime,
                      ObjectMapper mapper,
                      int initialBucketCount,
                      int maxBucketSize); @Override Completable init(); @Override Observable<Pair<List<Job<?>>, Integer>> retrieveJobs(); @Override Observable<Job<?>> retrieveJob(String jobId); @Override Completable storeJob(Job job); @Override Completable updateJob(Job job); @Override Completable deleteJob(Job job); @Override Observable<Pair<List<Task>, Integer>> retrieveTasksForJob(String jobId); @Override Observable<Task> retrieveTask(String taskId); @Override Completable storeTask(Task task); @Override Completable updateTask(Task task); @Override Completable replaceTask(Task oldTask, Task newTask); @Override Completable moveTask(Job jobFrom, Job jobTo, Task taskAfter); @Override Completable deleteTask(Task task); @Override Observable<Job<?>> retrieveArchivedJob(String jobId); @Override Observable<Task> retrieveArchivedTasksForJob(String jobId); @Override Observable<Task> retrieveArchivedTask(String taskId);  }
@Test public void testRetrieveArchivedJob() { testRetrieveArchivedJob(true); }