FileSystemListener implements IPullingListener<F>, HasPhysicalDestination, IProvidesMessageBrowsers<F> { @Override public void configure() throws ConfigurationException { FS fileSystem = getFileSystem(); fileSystem.configure(); if (getNumberOfBackups()>0 && !(fileSystem instanceof IWritableFileSystem)) { throw new ConfigurationException("FileSystem ["+ClassUtils.nameOf(fileSystem)+"] does not support setting attribute 'numberOfBackups'"); } } FileSystemListener(); @Override void configure(); @Override void open(); @Override void close(); @Override Map<String,Object> openThread(); @Override void closeThread(Map<String,Object> threadContext); @Override String getPhysicalDestinationName(); FS getFileSystem(); @Override synchronized F getRawMessage(Map<String,Object> threadContext); @Override void afterMessageProcessed(PipeLineResult processResult, Object rawMessageOrWrapper, Map<String,Object> context); @Override Message extractMessage(F rawMessage, Map<String,Object> threadContext); @Override String getIdFromRawMessage(F rawMessage, Map<String, Object> threadContext); @Override IMessageBrowser<F> getInProcessBrowser(); @Override IMessageBrowser<F> getMessageLogBrowser(); @Override IMessageBrowser<F> getErrorStoreBrowser(); @Override @IbisDoc({"1", "name of the listener", ""}) void setName(String name); @Override String getName(); @Deprecated @ConfigurationWarning("attribute 'inputDirectory' has been replaced by 'inputFolder'") void setInputDirectory(String inputDirectory); @IbisDoc({"1", "Folder that is scanned for files. If not set, the root is scanned", ""}) void setInputFolder(String inputFolder); String getInputFolder(); @Deprecated @ConfigurationWarning("attribute 'outputDirectory' has been replaced by 'inProcessFolder'") void setOutputDirectory(String outputDirectory); @IbisDoc({"2", "Folder where files are stored <i>while</i> being processed", ""}) void setInProcessFolder(String inProcessFolder); String getInProcessFolder(); @Deprecated @ConfigurationWarning("attribute 'processedDirectory' has been replaced by 'processedFolder'") void setProcessedDirectory(String processedDirectory); @IbisDoc({"3", "Folder where files are stored <i>after</i> being processed", ""}) void setProcessedFolder(String processedFolder); String getProcessedFolder(); @IbisDoc({"4", "Folder where files are stored <i>after</i> being processed, in case the exit-state was not equal to <code>success</code>", ""}) void setErrorFolder(String errorFolder); String getErrorFolder(); @IbisDoc({"5", "Folder where a copy of every files that is received is stored", ""}) void setLogFolder(String logFolder); String getLogFolder(); @IbisDoc({"6", "If set to <code>true</code>, the folders to look for files and to move files to when being processed and after being processed are created if they are specified and do not exist", "false"}) void setCreateFolders(boolean createFolders); boolean isCreateFolders(); @Deprecated @ConfigurationWarning("attribute 'createInputDirectory' has been replaced by 'createFolders'") void setCreateInputDirectory(boolean createInputDirectory); @IbisDoc({"7", "If set <code>true</code>, the file processed will deleted after being processed, and not stored", "false"}) void setDelete(boolean b); boolean isDelete(); @IbisDoc({"8", "Number of copies held of a file with the same name. Backup files have a dot and a number suffixed to their name. If set to 0, no backups will be kept.", "0"}) void setNumberOfBackups(int i); int getNumberOfBackups(); @IbisDoc({"8", "If set <code>true</code>, the destination file will be deleted if it already exists", "false"}) void setOverwrite(boolean overwrite); boolean isOverwrite(); @IbisDoc({"9", "If <code>true</code>, the file modification time is used in addition to the filename to determine if a file has been seen before", "false"}) void setFileTimeSensitive(boolean b); boolean isFileTimeSensitive(); @IbisDoc({"10", "Determines the contents of the message that is sent to the pipeline. Can be 'name', for the filename, 'path', for the full file path, 'contents' for the contents of the file. For any other value, the attributes of the file are searched and used", "path"}) void setMessageType(String messageType); String getMessageType(); @IbisDoc({"11", "Minimal age of file in milliseconds, to avoid receiving a file while it is still being written", "1000 [ms]"}) void setMinStableTime(long minStableTime); long getMinStableTime();  }
@Test public void fileListenerTestConfigure() throws Exception { fileSystemListener.configure(); }