로컬 파일의 변경 모니터링
Liberty는 구성, 애플리케이션, 기타 자원의 변경에 대한 응답으로 상당한 동적 동작을 보여줍니다. 이러한 동적 동작의 대부분은 로컬 파일 시스템에서 모니터링하는 변경에 따른 것입니다. 이러한 모니터링을 수행하는 서비스는 FileMonitor SPI를 통해 모든 Liberty 기능에 사용 가능합니다. Liberty 커널이 파일 모니터 서비스를 제공하므로 이 서비스를 사용할 수 있도록 server.xml 파일에 기능을 지정하지 않아도 됩니다.
이 태스크 정보
FileMonitor SPI는 여러 가지 특성을 지정하여 모니터링되는 자원과 빈도를 지정합니다. FileMonitor 인터페이스를 구현하고 구현 클래스를 서비스 레지스트리에 등록해야 합니다.
각 Liberty SPI에 대한 Java™ API 문서는 ${wlp.install.dir}/dev 디렉토리의 javadoc 서브디렉토리 중 하나에 별도의 .zip 파일로 사용 가능합니다.
예
...
import com.ibm.wsspi.kernel.filemonitor.FileMonitor;
...
public class MyFileMonitor implements FileMonitor {
...
private final BundleContext bundleContex;
...
public MyFileMonitor(BundleContext bundleContext) {
this.bundleContext = BundleContext;
...
}
public ServiceRegistration<FileMonitor> monitorFiles(Collection<String> paths, long monitorInterval) {
...
final Hashtable<String, Object> fileMonitorProps = new Hashtable<String, Object>();
fileMonitorProps.put(FileMonitor.MONITOR_FILES, paths);
fileMonitorProps.put(FileMonitor.MONITOR_INTERVAL, monitorInterval);
...
return bundleContext.registerService(FileMonitor.class, this, fileMonitorProps);
}
...
}