프록시 작업자
프록시 작업자는 작업을 처리하고 결과를 만드는 역할을 담당하는 프로세서입니다. 작업자는 프록시 인스턴스에 상주하며 프록시 작업자로 인식하려면 sling JobProcessor을(를) 구현해야 합니다.
NOTE
작업자가 프록시 작업자로 인식되도록 sling JobProcessor을(를) 구현해야 합니다.
클라이언트 API
JobService
은(는) 작업을 만들고 작업을 제거하고 해당 작업에서 결과를 가져오는 메서드를 제공하는 OSGi 서비스로 사용할 수 있습니다. 이 서비스의 기본 구현(JobServiceImpl
)은 HTTP 클라이언트를 사용하여 원격 프록시 서블릿과 통신합니다.
다음은 API 사용의 예입니다.
@Reference
JobService proxyJobService;
// to create a job
final Hashtable props = new Hashtable();
props.put("someproperty", "some value");
props.put(JobUtil.PROPERTY_JOB_TOPIC, "myworker/job"); // this is an identifier of the worker
final String jobId = proxyJobService.addJob(props, new Asset[]{asset});
// to check status (returns JobService.STATUS_FINISHED or JobService.STATUS_INPROGRESS)
int status = proxyJobService.getStatus(jobId)
// to get the result
final String jsonString = proxyJobService.getResult(jobId);
// to remove job and cleanup
proxyJobService.removeJob(jobId);
Cloud Service 구성
프록시 및 프록시 작업자 구성은 모두 클라우드 서비스 구성을 통해 Assets 도구 콘솔 또는 /etc/cloudservices/proxy
에서 액세스할 수 있습니다. 각 프록시 작업자는 작업자별 구성 세부 정보(예: /etc/cloudservices/proxy/workername
)에 대해 /etc/cloudservices/proxy
아래에 노드를 추가해야 합니다.
NOTE
자세한 내용은 InDesign Server 프록시 작업자 구성 및 Cloud Service 구성을 참조하십시오.
다음은 API 사용의 예입니다.
@Reference(policy = ReferencePolicy.STATIC)
ProxyConfig proxyConfig;
// to get proxy config
Configuration cloudConfig = proxyConfig.getConfiguration();
final String value = cloudConfig.get("someProperty", "defaultValue");
// to get worker config
Configuration cloudConfig = proxyConfig.getConfiguration("workername");
final String value = cloudConfig.get("someProperty", "defaultValue");