public async Task <UpdateSchemaResult> UpdateSchemaAsync(CancellationToken cancellationToken, bool doNotCreateIfFirstTableNotExist, params DBTable[] tables)
        {
            string serialized_data       = Serialize(tables);
            string serialized_bool       = Serialize(doNotCreateIfFirstTableNotExist);
            var    content               = new StringContent(JsonSerializer.Serialize(serialized_bool + '|' + serialized_data), Encoding.UTF8, "application/json");
            HttpResponseMessage response = await client.PostAsync($"api/xpo/updateschema", content, cancellationToken).ConfigureAwait(false);

            response.EnsureSuccessStatusCode();
            string             result = JsonSerializer.Deserialize <string>(await response.Content.ReadAsStringAsync().ConfigureAwait(false));
            UpdateSchemaResult response_deserialized = Deserialize <OperationResult <UpdateSchemaResult> >(result).Result;

            return(response_deserialized);
        }
        public async Task <UpdateSchemaResult> UpdateSchema()
        {
            try
            {
                byte[] Bytes = null;
                Bytes = await Request.GetRawBodyBytesAsync();

                var Parameters = RestApiDataStore.GetObjectsFromByteArray <UpdateSchemaParameters>(Bytes);
                UpdateSchemaResult updateSchemaResult = _DataStore.UpdateSchema(Parameters.dontCreateIfFirstTableNotExist, Parameters.tables);
                return(updateSchemaResult);
            }
            catch (Exception exception)
            {
                Debug.WriteLine(string.Format("{0}:{1}", "exception.Message", exception.Message));
                if (exception.InnerException != null)
                {
                    Debug.WriteLine(string.Format("{0}:{1}", "exception.InnerException.Message", exception.InnerException.Message));
                }
                Debug.WriteLine(string.Format("{0}:{1}", " exception.StackTrace", exception.StackTrace));
            }
            return(new UpdateSchemaResult());
        }
Example #3
0
        public virtual async Task <IActionResult> UpdateSchema()
        {
            try
            {
                byte[] Bytes = null;
                Bytes = await Request.GetRawBodyBytesAsync();

                var Parameters = objectSerializationService.GetObjectsFromByteArray <UpdateSchemaParameters>(Bytes);
                UpdateSchemaResult updateSchemaResult = dataStore.UpdateSchema(Parameters.dontCreateIfFirstTableNotExist, Parameters.tables);
                return(Ok(updateSchemaResult));
            }
            catch (Exception ex)
            {
                Debug.WriteLine(string.Format("{0}:{1}", "exception.Message", ex.Message));
                if (ex.InnerException != null)
                {
                    Debug.WriteLine(string.Format("{0}:{1}", "exception.InnerException.Message", ex.InnerException.Message));
                }
                Debug.WriteLine(string.Format("{0}:{1}", " exception.StackTrace", ex.StackTrace));
                return(BadRequest(ex));
            }
        }