Ejemplo n.º 1
0
        async private void AddPetAction()
        {
            var serverConnect = new ServerConnect();
            var petObject     = new Pet
            {
                PetID    = StringOperations.GenerateID(),
                UserID   = MainApp.Session.UserID,
                PetName  = Pet_Name,
                PetBreed = Pet_Breed,
                PetDesc  = Pet_Desc
            };

            IsBusy = true;
            ServerResponseObject response = await serverConnect.ConnectApi(petObject, Keys.Aws_Resource_SavePet);

            IsBusy = false;

            if (response.status == ServerReplyStatus.Success)
            {
                await MainApp.MainPage.DisplayAlert("Attention!", "Pet data saved successfully!", "Ok");
            }
            else if (response.status == ServerReplyStatus.Fail)
            {
                await MainApp.MainPage.DisplayAlert("Attention!", "Error saving pet data!", "Ok");
            }
            else if (response.status == ServerReplyStatus.Unknown)
            {
                await MainApp.MainPage.DisplayAlert("Attention!", $"Error saving pet data!:{response.error}", "Ok");
            }
        }
Ejemplo n.º 2
0
        public async Task <ServerResponseObject> ConnectApi(object _sentObject, string _endPoint)
        {
            //var returnMessage = ServerReplyStatus.Unknown;

            var responseMessage = new ServerResponseObject();

            string the_uri;
            string jsonObject = JsonConvert.SerializeObject(_sentObject);
            var    content    = new StringContent(jsonObject, Encoding.UTF8, "application/json");

            the_uri = Keys.Aws_Resource_Folder + _endPoint;

            Debug.WriteLine("//Connected To Server/Device with body:" + jsonObject + "\nWith URI:" + the_uri);

            using (HttpClient _client = new HttpClient())
            {
                try
                {
                    _client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(MyApp.Session.IdToken);

                    var connectionResponse = await _client.PostAsync(the_uri, content);

                    if (connectionResponse.IsSuccessStatusCode)
                    {
                        Debug.WriteLine($"//Connection success, Status code:{connectionResponse.StatusCode}");
                        responseMessage.status = ServerReplyStatus.Success;
                        responseMessage.data   = connectionResponse.Content.ReadAsStringAsync().Result;
                    }
                    else
                    {
                        Debug.WriteLine($"//Connection failed, Status code:{connectionResponse.StatusCode}");
                        responseMessage.status = ServerReplyStatus.Fail;
                    }
                }
                catch (Exception e)
                {
                    Debug.WriteLine($"//From {this.GetType().Name}, exception in connect:{e.Message}");
                    responseMessage.error  = e.Message;
                    responseMessage.status = ServerReplyStatus.Unknown;
                }
            }

            return(responseMessage);
        }