Example usage for org.apache.commons.vfs2 FileChangeEvent getFile

List of usage examples for org.apache.commons.vfs2 FileChangeEvent getFile

Introduction

In this page you can find the example usage for org.apache.commons.vfs2 FileChangeEvent getFile.

Prototype

public FileObject getFile() 

Source Link

Document

Returns the file that changed.

Usage

From source file:watchserver.util.WatchEventListener.java

public void fileChanged(FileChangeEvent fileChangeEvent) throws Exception {
    log.info("file changed : " + folder
            + FilenameUtils.getName(fileChangeEvent.getFile().getName().getBaseName()));
    callRaptureAction(EventType.MODIFY, fileChangeEvent);
}

From source file:watchserver.util.WatchEventListener.java

private void callRaptureAction(EventType et, FileChangeEvent fe) {
    String actionForEvent = getActionForEvent(et);

    if (!actionForEvent.isEmpty()) {
        //get the action type
        Scheme scheme = new RaptureURI(actionForEvent).getScheme();
        ImmutableMap<String, String> params = ImmutableMap.of("filetoprocess",
                fe.getFile().getName().toString());

        switch (scheme) {
        case SCRIPT:
            String runScript = Kernel.getScript().runScript(ContextFactory.getKernelUser(), actionForEvent,
                    params);/*from www.  jav a2  s  .  com*/
            log.info("Started script: " + runScript + " with params: " + params.toString());
            break;
        case WORKFLOW:
            String createWorkOrder = Kernel.getDecision().createWorkOrder(ContextFactory.getKernelUser(),
                    actionForEvent, params);
            log.info("Started workorder: " + createWorkOrder + " with params: " + params.toString());
            break;
        default:
            log.error(scheme + " is not supported for " + folder
                    + FilenameUtils.getName(fe.getFile().getName().getBaseName()));
            break;
        }
    } else {
        log.error(et + " has no associated action for monitor on " + folder);
    }

}