Esempio n. 1
0
        public HttpResponseMessage ConfirmProductDetails(ProductIdArgs args, bool confirm, HttpRequestMessage request)
        {
            DynamoDBTracer.Tracer.Write(string.Format("ConfirmProductDetails called. Args: {0}", args), "Verbose");
            this.CheckAndUpdateDoSLimits(request, args.EmailId);
            HttpResponseMessage response;

            try
            {
                var catalogProvider = PriceUpdateContext.Instance.CatalogFactory.GetProductCatalogProvider();
                ProductCatalogEntity catalogEntity = catalogProvider.GetProduct(args);
                if (string.IsNullOrEmpty(catalogEntity.EmailId) || string.IsNullOrEmpty(catalogEntity.ASIN))
                {
                    response = new HttpResponseMessage(HttpStatusCode.NotFound);
                    return(response);
                }
                catalogEntity.IsConfirmed = confirm;
                catalogProvider.UpdateProduct(catalogEntity);
                response = new HttpResponseMessage(HttpStatusCode.OK);
            }
            catch
            {
                response = new HttpResponseMessage(HttpStatusCode.InternalServerError);
            }
            DynamoDBTracer.Tracer.Write(string.Format("ConfirmProductDetails succeeded. Args: {0}", args), "Verbose");
            return(response);
        }
Esempio n. 2
0
        // Put will confirm, Confirmation through email
        // This is not yet used. Default everything is confirmed
        public HttpResponseMessage Put([FromBody] ProductIdArgs args, bool confirmed)
        {
            HttpResponseMessage httpResponse;

            if (args == null)
            {
                httpResponse = Request.CreateResponse(HttpStatusCode.BadRequest, "Input arguments are null. Please check your request");
            }
            else
            {
                HttpRequest httpRequest = HttpContext.Current.Request;
                httpResponse = this.apiManager.ConfirmProductDetails(args, confirmed, Request);
                //Fix this later. This is inconsistent
                httpResponse = Request.CreateResponse(httpResponse.StatusCode, "Confirmed!");
            }

            return(httpResponse);
        }
Esempio n. 3
0
 public void SendConfirmationMail(ProductIdArgs args)
 {
 }
Esempio n. 4
0
 //DELETE Delete's the product rule and marks the product as deleted
 //Yet to be implemented
 //TODO: Figure out logical or hard deletion
 public HttpResponseMessage Delete([FromBody] ProductIdArgs args)
 {
     return(null);
 }