class JobDelegator extends BaseDelegator implements IJobDelegator {

    @SuppressWarnings("unchecked")
    @Override
    public IJob getJob(final String jobId)
            throws ConnectionException, RequestException, AccessException {

        Validate.notNull(jobId, "JobId should not be null");

        List<Map<String, Object>> resultMaps = execMapCmdList(JOB, new String[] { "-o", jobId },
                null);

        return ResultListBuilder.buildNullableObjectFromNonInfoMessageCommandResultMaps(
                resultMaps,
                // p4ic4idea: explicit generics
                new Function<Map<String, Object>, IJob>() {
                    @Override
                    // p4ic4idea: explicit generics
                    public IJob apply(Map<String, Object> map) {
                        return new Job(server, map);
                    }
                }
        );
    }

    public  JobDelegator(final IOptionsServer server);

}