diff --git a/forward_engineering/config.json b/forward_engineering/config.json index 431964a..7e8f5e2 100644 --- a/forward_engineering/config.json +++ b/forward_engineering/config.json @@ -68,7 +68,32 @@ }, "defaultValue": { "primaryKey": [] - } + }, + "applyToValue": "ignore" + }, + { + "dependency": { + "type": "and", + "values": [ + { + "key": "primaryKey", + "valueType": "array" + }, + { + "type": "not", + "values": [ + { + "key": "streamingTable", + "value": true + } + ] + } + ] + }, + "defaultValue": { + "primaryKey": [] + }, + "applyToValue": "separate" }, { "dependency": { @@ -87,7 +112,43 @@ "defaultValue": { "primaryKey": false, "compositePrimaryKey": false - } + }, + "applyToValue": "ignore" + }, + { + "dependency": { + "type": "and", + "values": [ + { + "type": "or", + "values": [ + { + "key": "primaryKey", + "value": true + }, + { + "key": "compositePrimaryKey", + "value": true + } + ] + }, + { + "type": "not", + "values": [ + { + "level": "root", + "key": "streamingTable", + "value": true + } + ] + } + ] + }, + "defaultValue": { + "primaryKey": false, + "compositePrimaryKey": false + }, + "applyToValue": "separate" } ] }, @@ -111,7 +172,19 @@ "disabled": false, "disabledLabel": "" } - } + }, + "filterAdapters": [ + { + "applyToValue": "separate", + "adapter": "preserveRelationshipsForTablesMatchingDependency", + "adapterProps": { + "dependency": { + "key": "streamingTable", + "value": true + } + } + } + ] }, { "keyword": "uniqueConstraints", @@ -164,7 +237,33 @@ }, "defaultValue": { "required": false - } + }, + "applyToValue": "ignore" + }, + { + "dependency": { + "type": "and", + "values": [ + { + "key": "required", + "value": true + }, + { + "type": "not", + "values": [ + { + "level": "root", + "key": "streamingTable", + "value": true + } + ] + } + ] + }, + "defaultValue": { + "required": false + }, + "applyToValue": "separate" } ] }, @@ -251,7 +350,33 @@ }, "defaultValue": { "default": "" - } + }, + "applyToValue": "ignore" + }, + { + "dependency": { + "type": "and", + "values": [ + { + "key": "default", + "exist": true + }, + { + "type": "not", + "values": [ + { + "level": "root", + "key": "streamingTable", + "value": true + } + ] + } + ] + }, + "defaultValue": { + "default": "" + }, + "applyToValue": "separate" } ] }, @@ -326,7 +451,36 @@ }, "defaultValue": { "description": "" - } + }, + "applyToValue": "ignore" + }, + { + "dependency": { + "type": "and", + "values": [ + { + "key": "collectionName", + "exist": true + }, + { + "key": "description", + "exist": true + }, + { + "type": "not", + "values": [ + { + "key": "streamingTable", + "value": true + } + ] + } + ] + }, + "defaultValue": { + "description": "" + }, + "applyToValue": "separate" } ] }, @@ -414,7 +568,50 @@ }, "defaultValue": { "description": "" - } + }, + "applyToValue": "ignore" + }, + { + "dependency": { + "type": "and", + "values": [ + { + "type": "not", + "values": [ + { + "key": "type", + "value": "bucket" + } + ] + }, + { + "key": "collectionName", + "exist": false + }, + { + "key": "viewOn", + "exist": false + }, + { + "key": "description", + "exist": true + }, + { + "type": "not", + "values": [ + { + "level": "root", + "key": "streamingTable", + "value": true + } + ] + } + ] + }, + "defaultValue": { + "description": "" + }, + "applyToValue": "separate" } ] }