CAMEL-10969: Use json-simple as json parser in JSonSchemaHelper instead of our own home-ground parser.
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/d75403bc Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/d75403bc Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/d75403bc Branch: refs/heads/json-simple Commit: d75403bcdb62ff5c6d9d9232697345b75a34b093 Parents: a64bc91 Author: Claus Ibsen <davscl...@apache.org> Authored: Sun Sep 24 11:09:10 2017 +0200 Committer: Claus Ibsen <davscl...@apache.org> Committed: Sun Sep 24 11:09:10 2017 +0200 ---------------------------------------------------------------------- .../apache/camel/catalog/CamelCatalogTest.java | 41 ++ .../resources/org/foo/camel/dummy-pretty.json | 383 ++++++++++ .../org/foo/camel/dummyformat-pretty.json | 56 ++ .../src/test/resources/sample-pretty.json | 693 +++++++++++++++++++ 4 files changed, 1173 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/d75403bc/platforms/camel-catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java ---------------------------------------------------------------------- diff --git a/platforms/camel-catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java b/platforms/camel-catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java index 5ad90f6..201d14a 100644 --- a/platforms/camel-catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java +++ b/platforms/camel-catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java @@ -318,6 +318,13 @@ public class CamelCatalogTest { } @Test + public void testAsEndpointUriJsonPrettyJson() throws Exception { + String json = loadText(CamelCatalogTest.class.getClassLoader().getResourceAsStream("sample-pretty.json")); + String uri = catalog.asEndpointUri("ftp", json, true); + assertEquals("ftp:someserver:21/foo?connectTimeout=5000", uri); + } + + @Test public void testEndpointProperties() throws Exception { Map<String, String> map = catalog.endpointProperties("ftp:someserver:21/foo?connectTimeout=5000"); assertNotNull(map); @@ -898,6 +905,23 @@ public class CamelCatalogTest { } @Test + public void testAddComponentWithPrettyJson() throws Exception { + String json = loadText(new FileInputStream("src/test/resources/org/foo/camel/dummy-pretty.json")); + assertNotNull(json); + catalog.addComponent("dummy", "org.foo.camel.DummyComponent", json); + + assertTrue(catalog.findComponentNames().contains("dummy")); + + json = catalog.componentJSonSchema("dummy"); + assertNotNull(json); + + // validate we can parse the json + ObjectMapper mapper = new ObjectMapper(); + JsonNode tree = mapper.readTree(json); + assertNotNull(tree); + } + + @Test public void testAddDataFormat() throws Exception { catalog.addDataFormat("dummyformat", "org.foo.camel.DummyDataFormat"); @@ -930,6 +954,23 @@ public class CamelCatalogTest { } @Test + public void testAddDataFormatWithPrettyJSon() throws Exception { + String json = loadText(new FileInputStream("src/test/resources/org/foo/camel/dummyformat-pretty.json")); + assertNotNull(json); + catalog.addDataFormat("dummyformat", "org.foo.camel.DummyDataFormat", json); + + assertTrue(catalog.findDataFormatNames().contains("dummyformat")); + + json = catalog.dataFormatJSonSchema("dummyformat"); + assertNotNull(json); + + // validate we can parse the json + ObjectMapper mapper = new ObjectMapper(); + JsonNode tree = mapper.readTree(json); + assertNotNull(tree); + } + + @Test public void testSimpleExpression() throws Exception { SimpleValidationResult result = catalog.validateSimpleExpression(null, "${body}"); assertTrue(result.isSuccess()); http://git-wip-us.apache.org/repos/asf/camel/blob/d75403bc/platforms/camel-catalog/src/test/resources/org/foo/camel/dummy-pretty.json ---------------------------------------------------------------------- diff --git a/platforms/camel-catalog/src/test/resources/org/foo/camel/dummy-pretty.json b/platforms/camel-catalog/src/test/resources/org/foo/camel/dummy-pretty.json new file mode 100644 index 0000000..60cb547 --- /dev/null +++ b/platforms/camel-catalog/src/test/resources/org/foo/camel/dummy-pretty.json @@ -0,0 +1,383 @@ +{ + "component": { + "kind": "component", + "scheme": "dummy", + "syntax": "dummy:loggerName", + "title": "Dummy", + "description": "The dummy component logs message exchanges to the underlying logging mechanism.", + "label": "core,monitoring", + "producerOnly": true, + "consumerOnly": false, + "javaType": "org.foo.camel.DummyComponent", + "groupId": "org.foo.camel", + "artifactId": "dummy", + "version": "1.0" + }, + "componentProperties": { + "exchangeFormatter": { + "kind": "property", + "displayName": "Exchange Formatter", + "type": "object", + "javaType": "org.apache.camel.spi.ExchangeFormatter", + "deprecated": false, + "description": "Sets a custom ExchangeFormatter to convert the Exchange to a String suitable for logging. If not specified we default to DefaultExchangeFormatter." + } + }, + "properties": { + "loggerName": { + "kind": "path", + "displayName": "Logger Name", + "group": "producer", + "required": true, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "description": "The logger name to use" + }, + "amount": { + "kind": "parameter", + "displayName": "Amount", + "group": "producer", + "type": "integer", + "javaType": "int", + "deprecated": false, + "secret": false, + "defaultValue": 1, + "description": "Number of drinks in the order" + }, + "groupActiveOnly": { + "kind": "parameter", + "displayName": "Group Active Only", + "group": "producer", + "type": "boolean", + "javaType": "java.lang.Boolean", + "deprecated": false, + "defaultValue": true, + "description": "If true will hide stats when no new messages have been received for a time interval if false show stats regardless of message traffic." + }, + "groupDelay": { + "kind": "parameter", + "displayName": "Group Delay", + "group": "producer", + "type": "integer", + "javaType": "java.lang.Long", + "deprecated": false, + "description": "Set the initial delay for stats (in millis)" + }, + "groupInterval": { + "kind": "parameter", + "displayName": "Group Interval", + "group": "producer", + "type": "integer", + "javaType": "java.lang.Long", + "deprecated": false, + "description": "If specified will group message stats by this time interval (in millis)" + }, + "groupSize": { + "kind": "parameter", + "displayName": "Group Size", + "group": "producer", + "type": "integer", + "javaType": "java.lang.Integer", + "deprecated": false, + "description": "An integer that specifies a group size for throughput logging." + }, + "level": { + "kind": "parameter", + "displayName": "Level", + "group": "producer", + "type": "string", + "javaType": "java.lang.String", + "enum": [ + "ERROR", + "WARN", + "INFO", + "DEBUG", + "TRACE", + "OFF" + ], + "deprecated": false, + "defaultValue": "INFO", + "description": "Logging level to use. The default value is INFO." + }, + "marker": { + "kind": "parameter", + "displayName": "Marker", + "group": "producer", + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "description": "An optional Marker name to use." + }, + "exchangePattern": { + "kind": "parameter", + "displayName": "Exchange Pattern", + "group": "advanced", + "label": "advanced", + "type": "string", + "javaType": "org.apache.camel.ExchangePattern", + "enum": [ + "InOnly", + "RobustInOnly", + "InOut", + "InOptionalOut", + "OutOnly", + "RobustOutOnly", + "OutIn", + "OutOptionalIn" + ], + "deprecated": false, + "defaultValue": "InOnly", + "description": "Sets the default exchange pattern when creating an exchange." + }, + "synchronous": { + "kind": "parameter", + "displayName": "Synchronous", + "group": "advanced", + "label": "advanced", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "Sets whether synchronous processing should be strictly used or Camel is allowed to use asynchronous processing (if supported)." + }, + "kerberosRenewJitter": { + "kind": "parameter", + "displayName": "Kerberos Renew Jitter", + "group": "security", + "label": "common,security", + "type": "number", + "javaType": "java.lang.Double", + "deprecated": false, + "secret": false, + "defaultValue": 0.05, + "description": "Percentage of random jitter added to the renewal time." + }, + "maxChars": { + "kind": "parameter", + "displayName": "Max Chars", + "group": "formatting", + "label": "formatting", + "type": "integer", + "javaType": "int", + "deprecated": false, + "defaultValue": 10000, + "description": "Limits the number of characters logged per line." + }, + "multiline": { + "kind": "parameter", + "displayName": "Multiline", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "If enabled then each information is outputted on a newline." + }, + "repeatCount": { + "kind": "parameter", + "displayName": "Repeat Count", + "group": "consumer", + "type": "integer", + "javaType": "long", + "deprecated": false, + "secret": false, + "defaultValue": 0, + "description": "Specifies a maximum limit of number of fires. So if you set it to 1 the timer will only fire once. If you set it to 5 it will only fire five times. A value of zero or negative means fire forever." + }, + "showAll": { + "kind": "parameter", + "displayName": "Show All", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "Quick option for turning all options on. (multiline maxChars has to be manually set if to be used)" + }, + "showBody": { + "kind": "parameter", + "displayName": "Show Body", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": true, + "description": "Show the message body." + }, + "showBodyType": { + "kind": "parameter", + "displayName": "Show Body Type", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": true, + "description": "Show the body Java type." + }, + "showCaughtException": { + "kind": "parameter", + "displayName": "Show Caught Exception", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "f the exchange has a caught exception show the exception message (no stack trace). A caught exception is stored as a property on the exchange (using the key link org.apache.camel.ExchangeEXCEPTION_CAUGHT and for instance a doCatch can catch exceptions." + }, + "showException": { + "kind": "parameter", + "displayName": "Show Exception", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "If the exchange has an exception show the exception message (no stacktrace)" + }, + "showExchangeId": { + "kind": "parameter", + "displayName": "Show Exchange Id", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "Show the unique exchange ID." + }, + "showExchangePattern": { + "kind": "parameter", + "displayName": "Show Exchange Pattern", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": true, + "description": "Shows the Message Exchange Pattern (or MEP for short)." + }, + "showFiles": { + "kind": "parameter", + "displayName": "Show Files", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "If enabled Camel will output files" + }, + "showFuture": { + "kind": "parameter", + "displayName": "Show Future", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "If enabled Camel will on Future objects wait for it to complete to obtain the payload to be logged." + }, + "showHeaders": { + "kind": "parameter", + "displayName": "Show Headers", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "Show the message headers." + }, + "showOut": { + "kind": "parameter", + "displayName": "Show Out", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "If the exchange has an out message show the out message." + }, + "showProperties": { + "kind": "parameter", + "displayName": "Show Properties", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "Show the exchange properties." + }, + "showStackTrace": { + "kind": "parameter", + "displayName": "Show Stack Trace", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "Show the stack trace if an exchange has an exception. Only effective if one of showAll showException or showCaughtException are enabled." + }, + "showStreams": { + "kind": "parameter", + "displayName": "Show Streams", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": false, + "description": "Whether Camel should show stream bodies or not (eg such as java.io.InputStream). Beware if you enable this option then you may not be able later to access the message body as the stream have already been read by this logger. To remedy this you will have to use Stream Caching." + }, + "skipBodyLineSeparator": { + "kind": "parameter", + "displayName": "Show Body Line Separator", + "group": "formatting", + "label": "formatting", + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "defaultValue": true, + "description": "Whether to skip line separators when logging the message body. This allows to log the message body in one line setting this option to false will preserve any line separators from the body which then will log the body as is." + }, + "fontSize": { + "kind": "parameter", + "displayName": "Font Size", + "group": "producer", + "type": "number", + "javaType": "float", + "deprecated": false, + "secret": false, + "defaultValue": 14, + "description": "Font size in pixels" + }, + "style": { + "kind": "parameter", + "displayName": "Style", + "group": "formatting", + "label": "formatting", + "type": "string", + "javaType": "org.apache.camel.processor.DefaultExchangeFormatter.OutputStyle", + "enum": [ + "Default", + "Tab", + "Fixed" + ], + "deprecated": false, + "defaultValue": "Default", + "description": "Sets the outputs style to use." + } + } +} + http://git-wip-us.apache.org/repos/asf/camel/blob/d75403bc/platforms/camel-catalog/src/test/resources/org/foo/camel/dummyformat-pretty.json ---------------------------------------------------------------------- diff --git a/platforms/camel-catalog/src/test/resources/org/foo/camel/dummyformat-pretty.json b/platforms/camel-catalog/src/test/resources/org/foo/camel/dummyformat-pretty.json new file mode 100644 index 0000000..867e357 --- /dev/null +++ b/platforms/camel-catalog/src/test/resources/org/foo/camel/dummyformat-pretty.json @@ -0,0 +1,56 @@ +{ + "dataformat": { + "name": "dummyformat", + "kind": "dataformat", + "modelName": "dummyformat", + "title": "DummyFormat", + "description": "Camel dummy data format support", + "label": "dataformat,transformation", + "javaType": "org.foo.camel.DummyDataFormat", + "groupId": "org.foo.camel", + "artifactId": "dummy", + "version": "1.0" + }, + "properties": { + "lineLength": { + "kind": "attribute", + "displayName": "Line Length", + "required": false, + "type": "integer", + "javaType": "java.lang.Integer", + "deprecated": false, + "defaultValue": "76", + "description": "To specific a maximum line length for the encoded data. By default 76 is used." + }, + "lineSeparator": { + "kind": "attribute", + "displayName": "Line Separator", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "defaultValue": "\r\n", + "description": "The line separators to use. By default \r\n is used." + }, + "urlSafe": { + "kind": "attribute", + "displayName": "Url Safe", + "required": false, + "type": "boolean", + "javaType": "java.lang.Boolean", + "deprecated": false, + "defaultValue": false, + "description": "Instead of emitting '' and '/' we emit '-' and '_' respectively. urlSafe is only applied to encode operations. Decoding seamlessly handles both modes. Is by default false." + }, + "id": { + "kind": "attribute", + "displayName": "Id", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "description": "Sets the value of the id property." + } + } +} + http://git-wip-us.apache.org/repos/asf/camel/blob/d75403bc/platforms/camel-catalog/src/test/resources/sample-pretty.json ---------------------------------------------------------------------- diff --git a/platforms/camel-catalog/src/test/resources/sample-pretty.json b/platforms/camel-catalog/src/test/resources/sample-pretty.json new file mode 100644 index 0000000..a9fcb10 --- /dev/null +++ b/platforms/camel-catalog/src/test/resources/sample-pretty.json @@ -0,0 +1,693 @@ +{ + "properties": { + "host": { + "value": "someserver", + "kind": "path", + "required": "true", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false", + "description": "Hostname of the FTP server" + }, + "port": { + "value": "21", + "kind": "path", + "type": "integer", + "javaType": "int", + "deprecated": "false", + "description": "Port of the FTP server" + }, + "directoryName": { + "value": "foo", + "kind": "path", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false", + "description": "The starting directory" + }, + "username": { + "kind": "parameter", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false", + "description": "Username to use for login" + }, + "password": { + "kind": "parameter", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false", + "description": "Password to use for login" + }, + "binary": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false" + }, + "passiveMode": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "description": "Sets passive mode connections. Default is active mode connections." + }, + "connectTimeout": { + "value": "5000", + "kind": "parameter", + "type": "integer", + "javaType": "int", + "deprecated": "false", + "defaultValue": "10000", + "description": "Sets the connect timeout for waiting for a connection to be established Used by both FTPClient and JSCH" + }, + "timeout": { + "kind": "parameter", + "type": "integer", + "javaType": "int", + "deprecated": "false", + "defaultValue": "30000", + "description": "Sets the data timeout for waiting for reply Used only by FTPClient" + }, + "soTimeout": { + "kind": "parameter", + "type": "integer", + "javaType": "int", + "deprecated": "false", + "description": "Sets the so timeout Used only by FTPClient" + }, + "throwExceptionOnConnectFailed": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "description": "Should an exception be thrown if connection failed (exhausted) By default exception is not thrown and a WARN is logged. You can use this to enable exception being thrown and handle the thrown exception from the org.apache.camel.spi.PollingConsumerPollStrategy rollback method." + }, + "siteCommand": { + "kind": "parameter", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false", + "description": "Sets optional site command(s) to be executed after successful login. Multiple site commands can be separated using a new line character (\n)." + }, + "stepwise": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "true", + "description": "Sets whether we should stepwise change directories while traversing file structures when downloading files or as well when uploading a file to a directory. You can disable this if you for example are in a situation where you cannot change directory on the FTP server due security reasons." + }, + "separator": { + "kind": "parameter", + "type": "object", + "javaType": "org.apache.camel.component.file.remote.RemoteFileConfiguration.PathSeparator", + "deprecated": "false", + "defaultValue": "Auto", + "description": "Sets the path separator to be used. UNIX = Uses unix style path separator Windows = Uses windows style path separator Auto = (is default) Use existing path separator in file name" + }, + "streamDownload": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "description": "Sets the download method to use when not using a local working directory. If set to true the remote files are streamed to the route as they are read. When set to false the remote files are loaded into memory before being sent into the route." + }, + "useList": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "true", + "description": "Whether to allow using LIST command when downloading a file. Default is true. In some use cases you may want to download a specific file and are not allowed to use the LIST command and therefore you can set this option to false." + }, + "ignoreFileNotFoundOrPermissionError": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "description": "Whether to ignore when trying to download a file which does not exist or due to permission error. By default when a file does not exists or insufficient permission then an exception is thrown. Setting this option to true allows to ignore that instead." + }, + "dataTimeout": { + "kind": "parameter", + "type": "integer", + "javaType": "int", + "deprecated": "false" + }, + "maximumReconnectAttempts": { + "kind": "parameter", + "type": "integer", + "javaType": "int", + "deprecated": "false" + }, + "reconnectDelay": { + "kind": "parameter", + "type": "integer", + "javaType": "long", + "deprecated": "false" + }, + "disconnect": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false" + }, + "fastExistsCheck": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false" + }, + "download": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false" + }, + "autoCreate": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "true" + }, + "bufferSize": { + "kind": "parameter", + "type": "integer", + "javaType": "int", + "deprecated": "false", + "defaultValue": "131072" + }, + "flatten": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false" + }, + "charset": { + "kind": "parameter", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false" + }, + "fileName": { + "kind": "parameter", + "type": "object", + "javaType": "org.apache.camel.Expression", + "deprecated": "false" + }, + "fileExist": { + "kind": "parameter", + "label": "producer", + "type": "string", + "javaType": "org.apache.camel.component.file.GenericFileExist", + "enum": [ + "Override", + "Append", + "Fail", + "Ignore", + "Move", + "TryRename" + ], + "deprecated": "false", + "defaultValue": "Override" + }, + "tempPrefix": { + "kind": "parameter", + "label": "producer", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false" + }, + "tempFileName": { + "kind": "parameter", + "label": "producer", + "type": "object", + "javaType": "org.apache.camel.Expression", + "deprecated": "false" + }, + "eagerDeleteTargetFile": { + "kind": "parameter", + "label": "producer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "true" + }, + "keepLastModified": { + "kind": "parameter", + "label": "producer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "false" + }, + "doneFileName": { + "kind": "parameter", + "label": "producer", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false" + }, + "allowNullBody": { + "kind": "parameter", + "label": "producer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "false" + }, + "chmod": { + "kind": "parameter", + "label": "producer", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false" + }, + "processStrategy": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "org.apache.camel.component.file.GenericFileProcessStrategy<T>", + "deprecated": "false" + }, + "inProgressRepository": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "org.apache.camel.spi.IdempotentRepository<java.lang.String>", + "deprecated": "false" + }, + "localWorkDirectory": { + "kind": "parameter", + "label": "consumer", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false" + }, + "startingDirectoryMustExist": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "false" + }, + "directoryMustExist": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "false" + }, + "noop": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "false" + }, + "recursive": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "false" + }, + "delete": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "false" + }, + "maxMessagesPerPoll": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "int", + "deprecated": "false" + }, + "eagerMaxMessagesPerPoll": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "true" + }, + "maxDepth": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "int", + "deprecated": "false", + "defaultValue": "2147483647" + }, + "minDepth": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "int", + "deprecated": "false" + }, + "include": { + "kind": "parameter", + "label": "consumer", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false" + }, + "exclude": { + "kind": "parameter", + "label": "consumer", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false" + }, + "move": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "org.apache.camel.Expression", + "deprecated": "false" + }, + "moveFailed": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "org.apache.camel.Expression", + "deprecated": "false" + }, + "preMove": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "org.apache.camel.Expression", + "deprecated": "false" + }, + "moveExisting": { + "kind": "parameter", + "label": "producer", + "type": "object", + "javaType": "org.apache.camel.Expression", + "deprecated": "false" + }, + "idempotent": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "java.lang.Boolean", + "deprecated": "false" + }, + "idempotentKey": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "org.apache.camel.Expression", + "deprecated": "false" + }, + "idempotentRepository": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "org.apache.camel.spi.IdempotentRepository<java.lang.String>", + "deprecated": "false" + }, + "filter": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "org.apache.camel.component.file.GenericFileFilter<T>", + "deprecated": "false" + }, + "antInclude": { + "kind": "parameter", + "label": "consumer", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false" + }, + "antExclude": { + "kind": "parameter", + "label": "consumer", + "type": "string", + "javaType": "java.lang.String", + "deprecated": "false" + }, + "sorter": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "java.util.Comparator<org.apache.camel.component.file.GenericFile<T>>", + "deprecated": "false" + }, + "sortBy": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "java.util.Comparator<org.apache.camel.Exchange>", + "deprecated": "false" + }, + "readLock": { + "kind": "parameter", + "label": "consumer", + "type": "string", + "javaType": "java.lang.String", + "enum": [ + "none", + "markerFile", + "fileLock", + "rename", + "changed" + ], + "deprecated": "false" + }, + "readLockCheckInterval": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "long", + "deprecated": "false", + "defaultValue": "1000" + }, + "readLockTimeout": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "long", + "deprecated": "false", + "defaultValue": "10000" + }, + "readLockMarkerFile": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "true" + }, + "readLockLoggingLevel": { + "kind": "parameter", + "label": "consumer", + "type": "string", + "javaType": "org.apache.camel.LoggingLevel", + "enum": [ + "DEBUG", + "ERROR", + "INFO", + "TRACE", + "WARN", + "OFF" + ], + "deprecated": "false", + "defaultValue": "WARN" + }, + "readLockMinLength": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "long", + "deprecated": "false", + "defaultValue": "1" + }, + "readLockMinAge": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "long", + "deprecated": "false", + "defaultValue": "0" + }, + "exclusiveReadLockStrategy": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy<T>", + "deprecated": "false" + }, + "startScheduler": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "true" + }, + "initialDelay": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "long", + "deprecated": "false", + "defaultValue": "1000" + }, + "delay": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "long", + "deprecated": "false", + "defaultValue": "500" + }, + "timeUnit": { + "kind": "parameter", + "label": "consumer", + "type": "string", + "javaType": "java.util.concurrent.TimeUnit", + "enum": [ + "NANOSECONDS", + "MICROSECONDS", + "MILLISECONDS", + "SECONDS", + "MINUTES", + "HOURS", + "DAYS" + ], + "deprecated": "false", + "defaultValue": "MILLISECONDS" + }, + "useFixedDelay": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "true" + }, + "pollStrategy": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "org.apache.camel.spi.PollingConsumerPollStrategy", + "deprecated": "false" + }, + "runLoggingLevel": { + "kind": "parameter", + "label": "consumer", + "type": "string", + "javaType": "org.apache.camel.LoggingLevel", + "enum": [ + "DEBUG", + "ERROR", + "INFO", + "TRACE", + "WARN", + "OFF" + ], + "deprecated": "false", + "defaultValue": "TRACE" + }, + "sendEmptyMessageWhenIdle": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false" + }, + "greedy": { + "kind": "parameter", + "label": "consumer", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false" + }, + "scheduler": { + "kind": "parameter", + "label": "consumer", + "type": "string", + "javaType": "org.apache.camel.spi.ScheduledPollConsumerScheduler", + "enum": [ + "spring", + "quartz2" + ], + "deprecated": "false" + }, + "schedulerProperties": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "java.util.Map<java.lang.String,java.lang.Object>", + "deprecated": "false" + }, + "scheduledExecutorService": { + "kind": "parameter", + "label": "consumer", + "type": "object", + "javaType": "java.util.concurrent.ScheduledExecutorService", + "deprecated": "false" + }, + "backoffMultiplier": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "int", + "deprecated": "false" + }, + "backoffIdleThreshold": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "int", + "deprecated": "false" + }, + "backoffErrorThreshold": { + "kind": "parameter", + "label": "consumer", + "type": "integer", + "javaType": "int", + "deprecated": "false" + }, + "exchangePattern": { + "kind": "parameter", + "type": "string", + "javaType": "org.apache.camel.ExchangePattern", + "enum": [ + "InOnly", + "RobustInOnly", + "InOut", + "InOptionalOut", + "OutOnly", + "RobustOutOnly", + "OutIn", + "OutOptionalIn" + ], + "deprecated": "false", + "defaultValue": "InOnly", + "description": "Sets the default exchange pattern when creating an exchange" + }, + "synchronous": { + "kind": "parameter", + "type": "boolean", + "javaType": "boolean", + "deprecated": "false", + "defaultValue": "false", + "description": "Sets whether synchronous processing should be strictly used or Camel is allowed to use asynchronous processing (if supported)." + } + } +} +