1- const { DROP_STATEMENTS } = require ( './helpers/constants' ) ;
2- const logInfo = require ( '../reverse_engineering/helpers/logInfo' ) ;
3- const { connect, getExternalBrowserUrl } = require ( '../reverse_engineering/api' ) ;
4- const { logDatabaseVersion } = require ( '../reverse_engineering/reverseEngineeringService/reverseEngineeringService' ) ;
5- const applyToInstanceHelper = require ( './helpers/applyToInstanceHelper' ) ;
6- const {
7- buildEntityLevelAlterScript,
8- parseDataForEntityLevelScript,
9- } = require ( './helpers/alterScriptHelpers/alterScriptBuilder' ) ;
1+ const { generateScript } = require ( './api/generateScript' ) ;
2+ const { generateContainerScript } = require ( './api/generateContainerScript' ) ;
3+ const { isDropInStatements } = require ( './api/isDropInStatements' ) ;
4+ const { testConnection, getExternalBrowserUrl } = require ( './api/testConnection' ) ;
5+ const { applyToInstance } = require ( './api/applyToInstance' ) ;
106
117/**
128 * @typedef {import('./helpers/alterScriptHelpers/types/AlterScriptDto').AlterScriptDto } AlterScriptDto
@@ -17,10 +13,7 @@ const {
1713 * @typedef {import('./types/coreApplicationDataTypes').ExternalDefinitions } ExternalDefinitions
1814 * @typedef {import('./types/coreApplicationDataTypes').InternalDefinitions } InternalDefinitions
1915 * @typedef {import('./types/coreApplicationDataTypes').ModelDefinitions } ModelDefinitions
20- * @typedef {import('./types/coreApplicationTypes').App } App
21- * @typedef {import('./types/coreApplicationTypes').Logger } Logger
22- * @typedef {import('./types/coreApplicationTypes').CoreData } CoreData
23- * @typedef {import('./types/coreApplicationTypes').PluginError } PluginError
16+
2417 *
2518 * @typedef {(error?: PluginError | null, result?: any | null) => void } PluginCallback
2619 * */
@@ -44,90 +37,13 @@ const {
4437 */
4538
4639module . exports = {
47- /**
48- * @param data {CoreData}
49- * @param logger {Logger}
50- * @param callback {PluginCallback}
51- * @param app {App}
52- * */
53- generateScript ( data , logger , callback , app ) {
54- try {
55- const parsedData = parseDataForEntityLevelScript ( data , app ) ;
56- const scripts = buildEntityLevelAlterScript ( data , app ) ( parsedData ) ;
57-
58- callback ( null , scripts ) ;
59- } catch ( error ) {
60- logger . log (
61- 'error' ,
62- { message : error . message , stack : error . stack } ,
63- 'MS SQL Server Forward-Engineering Error' ,
64- ) ;
65-
66- callback ( { message : error . message , stack : error . stack } ) ;
67- }
68- } ,
40+ generateScript,
6941 generateViewScript ( data , logger , callback , app ) {
7042 callback ( new Error ( 'Forward-Engineering of delta model on view level is not supported' ) ) ;
7143 } ,
72- generateContainerScript ( data , logger , callback , app ) {
73- try {
74- data . jsonSchema = data . collections [ 0 ] ;
75- this . generateScript ( data , logger , callback , app ) ;
76- } catch ( error ) {
77- logger . log (
78- 'error' ,
79- { message : error . message , stack : error . stack } ,
80- 'MS SQL Server Forward-Engineering Error' ,
81- ) ;
82-
83- callback ( { message : error . message , stack : error . stack } ) ;
84- }
85- } ,
86- isDropInStatements ( data , logger , callback , app ) {
87- try {
88- const cb = ( error , script = '' ) =>
89- callback (
90- error ,
91- DROP_STATEMENTS . some ( statement => script . includes ( statement ) ) ,
92- ) ;
93-
94- if ( data . level === 'container' ) {
95- this . generateContainerScript ( data , logger , cb , app ) ;
96- } else {
97- this . generateScript ( data , logger , cb , app ) ;
98- }
99- } catch ( e ) {
100- callback ( { message : e . message , stack : e . stack } ) ;
101- }
102- } ,
103- async testConnection ( connectionInfo , logger , callback , app ) {
104- try {
105- logInfo ( 'Test connection' , connectionInfo , logger ) ;
106- if ( connectionInfo . authMethod === 'Azure Active Directory (MFA)' ) {
107- await getExternalBrowserUrl ( connectionInfo , logger , callback , app ) ;
108- } else {
109- const client = await connect ( connectionInfo , logger , ( ) => { } , app ) ;
110- await logDatabaseVersion ( { client, logger } ) ;
111- }
112- callback ( null ) ;
113- } catch ( error ) {
114- logger . log ( 'error' , { message : error . message , stack : error . stack , error } , 'Test connection' ) ;
115- callback ( { message : error . message , stack : error . stack } ) ;
116- }
117- } ,
118- async applyToInstance ( connectionInfo , logger , callback , app ) {
119- logger . clear ( ) ;
120- logInfo ( 'Apply To Instance' , connectionInfo , logger ) ;
121-
122- try {
123- await applyToInstanceHelper . applyToInstance ( connectionInfo , logger , app ) ;
124- callback ( null ) ;
125- } catch ( error ) {
126- callback ( error ) ;
127- }
128- } ,
129-
130- async getExternalBrowserUrl ( connectionInfo , logger , cb , app ) {
131- return getExternalBrowserUrl ( connectionInfo , logger , cb , app ) ;
132- } ,
44+ generateContainerScript,
45+ isDropInStatements,
46+ testConnection,
47+ applyToInstance,
48+ getExternalBrowserUrl,
13349} ;
0 commit comments