public Converted Convert([FromBody] ConvertOptions convertOptions)
        {
            var channel = new Channel("localhost:50083", ChannelCredentials.Insecure);

            var client = new KickstartServiceApiClient(channel);

            var response = client.ConvertDDL(
                new Services.Types.ConvertDDLRequest
            {
                DatabaseType       = (DatabaseTypes)Enum.Parse(typeof(DatabaseTypes), convertOptions.ConvertToDatabaseType),
                ConvertToSnakeCase = convertOptions.ConvertToSnakeCase,

                UnconvertedTableDDL           = convertOptions.UnconvertedTableDDL,
                UnconvertedTableTypeDDL       = convertOptions.UnconvertedTableTypeDDL,
                UnconvertedStoredProcedureDDL = convertOptions.UnconvertedStoredProcedureDDL
            });

            return(new Converted()
            {
                ConvertedTableDDL = response.ConvertedTableDDL,
                ConvertedTableTypeDDL = response.ConvertedTableTypeDDL,
                ConvertedStoredProcedureDDL = response.ConvertedStoredProcedureDDL,
                ConvertedDmsJson = response.ConvertedDmsJson,
                ZipAsBase64 = response.ZipAsBase64
            });
        }
        public GeneratedSolution BuildSolution([FromBody] KickstartSolutionRequest generationModel)
        {
            generationModel.GenerateGrpcUnitTestProject = true;

            var channel = new Channel("localhost:50083", ChannelCredentials.Insecure);

            var client = new KickstartServiceApiClient(channel);

            var response = client.KickstartSolution(generationModel);

            return(new GeneratedSolution
            {
                Succeeded = response.Succeeded,
                ErrorMessage = response.ErrorMessage,
                ZipAsBase64 = response.GeneratedFilesBase64
            });
        }
        public Split Split([FromBody] SplitOptions splitOptions)
        {
            var channel = new Channel("localhost:50083", ChannelCredentials.Insecure);

            var client = new KickstartServiceApiClient(channel);
            
            var response = client.SplitDDL(
                new Services.Types.SplitDDLRequest
                {
                    DatabaseType = (DatabaseTypes)Enum.Parse(typeof(DatabaseTypes), splitOptions.DatabaseType),
                    
                    UnSplitTableDDL = splitOptions.UnSplitTableDDL,
                    UnSplitTableTypeDDL = splitOptions.UnSplitTableTypeDDL,
                    UnSplitViewDDL =  splitOptions.UnSplitViewDDL,
                    UnSplitFunctionDDL =  splitOptions.UnSplitFunctionDDL,
                    UnSplitStoredProcedureDDL = splitOptions.UnSplitStoredProcedureDDL
                });

            return  new Split()
            {
                ZipAsBase64 = response.ZipAsBase64
            };
        }