Example #1
0
        public static DeviceResource Deserialise(Request request)
        {
            DeviceResource result = null;
            string         name   = request.UriPaths.Last();

            if (!string.IsNullOrEmpty(name) && (request.ContentType == TlvConstant.CONTENT_TYPE_TLV))
            {
                result = new DeviceResource();
                using (TlvReader reader = new TlvReader(request.Payload))
                {
                    result.Deserialise(reader);
                }
            }
            return(result);
        }
Example #2
0
        protected override void DoPut(CoapExchange exchange)
        {
            DeviceResource deviceResource = DeviceResource.Deserialise(exchange.Request);

            if (deviceResource == null)
            {
                Response response = Response.CreateResponse(exchange.Request, StatusCode.BadRequest);
                exchange.Respond(response);
            }
            else
            {
                deviceResource.Name = this.GetNextChildName();
                this.Add(deviceResource);
                Response response = Response.CreateResponse(exchange.Request, StatusCode.Changed);
                exchange.Respond(response);
                OnChildCreated(deviceResource);
            }
        }
Example #3
0
        protected override void DoPost(CoapExchange exchange)
        {
            DeviceResource deviceResource = DeviceResource.Deserialise(exchange.Request);

            if (deviceResource == null)
            {
                Response response = Response.CreateResponse(exchange.Request, StatusCode.BadRequest);
                exchange.Respond(response);
            }
            else
            {
                deviceResource.Name = this.GetNextChildName();
                this.Add(deviceResource);
                Response response = Response.CreateResponse(exchange.Request, StatusCode.Created);
                response.AddOption(Option.Create(OptionType.LocationPath, string.Concat(deviceResource.Path, deviceResource.Name)));
                exchange.Respond(response);
                OnChildCreated(deviceResource);
            }
        }
 public static DeviceResource Deserialise(Request request)
 {
     DeviceResource result = null;
     string name = request.UriPaths.Last();
     if (!string.IsNullOrEmpty(name) && (request.ContentType == TlvConstant.CONTENT_TYPE_TLV))
     {
         result = new DeviceResource();
         using (TlvReader reader = new TlvReader(request.Payload))
         {
             result.Deserialise(reader);
         }
     }
     return result;
 }