@@ -5,9 +5,21 @@ const { SCRIPT_TYPES, SCHEMA_REGISTRIES_KEYS } = require('../shared/constants');
55const { parseJson, prepareName } = require ( './helpers/generalHelper' ) ;
66const validateAvroScript = require ( './helpers/validateAvroScript' ) ;
77const { formatAvroSchemaByType, getConfluentSubjectName } = require ( './helpers/formatAvroSchemaByType' ) ;
8- const { resolveUdt, addDefinitions, resetDefinitionsUsage, convertCollectionReferences, resolveNamespaceReferences } = require ( './helpers/udtHelper' ) ;
8+ const {
9+ resolveUdt,
10+ addDefinitions,
11+ resetDefinitionsUsage,
12+ convertCollectionReferences,
13+ resolveNamespaceReferences,
14+ clearDefinitions,
15+ } = require ( './helpers/udtHelper' ) ;
916const convertSchema = require ( './helpers/convertJsonSchemaToAvro' ) ;
10- const { initPluginConfiguration, getCustomProperties, getEntityLevelConfig, getFieldLevelConfig } = require ( '../shared/customProperties' ) ;
17+ const {
18+ initPluginConfiguration,
19+ getCustomProperties,
20+ getEntityLevelConfig,
21+ getFieldLevelConfig,
22+ } = require ( '../shared/customProperties' ) ;
1123let _ ;
1224
1325const generateModelScript = ( data , logger , cb , app ) => {
@@ -23,8 +35,8 @@ const generateModelScript = (data, logger, cb, app) => {
2335 const scriptType = getScriptType ( data , modelData ) || SCRIPT_TYPES . CONFLUENT_SCHEMA_REGISTRY ;
2436 const needMinify = isMinifyNeeded ( options ) ;
2537
26- setUserDefinedTypes ( externalDefinitions ) ;
27- setUserDefinedTypes ( modelDefinitions ) ;
38+ const convertedExternalDefinitions = convertSchemaToUserDefinedTypes ( externalDefinitions )
39+ const convertedModelDefinitions = convertSchemaToUserDefinedTypes ( modelDefinitions )
2840
2941 const entities = ( containers || [ ] )
3042 . flatMap ( container => container . entities
@@ -40,6 +52,10 @@ const generateModelScript = (data, logger, cb, app) => {
4052 internalDefinitions,
4153 references,
4254 } = entity ;
55+
56+ clearDefinitions ( ) ;
57+ addDefinitions ( convertedExternalDefinitions ) ;
58+ addDefinitions ( convertedModelDefinitions ) ;
4359 setUserDefinedTypes ( internalDefinitions ) ;
4460 resetDefinitionsUsage ( ) ;
4561
0 commit comments