@Override public String toString() { StringBuilder builder = new StringBuilder(); builder.append("CreateRequest [").append(getPath()).append("]"); return builder.toString(); }
@Override public void visit(CreateRequest request) { coapRequest = Request.newPost(); coapRequest.getOptions().setContentFormat(request.getContentFormat().getCode()); coapRequest.setPayload(LwM2mNodeEncoder.encode(request.getObjectInstance(), request.getContentFormat(), request.getPath())); setTarget(coapRequest, destination, request.getPath()); }
@Override protected CreateResponse doCreate(CreateRequest request) { Integer instanceId = request.getInstanceId(); if (instanceId == null) { // the client is in charge to generate the id of the new instance if (instances.isEmpty()) { instanceId = 0; } else { instanceId = Collections.max(instances.keySet()) + 1; } } LwM2mInstanceEnabler newInstance = instanceFactory.create(getObjectModel()); for (LwM2mResource resource : request.getResources()) { newInstance.write(resource.getId(), resource); } instances.put(instanceId, newInstance); listenInstance(newInstance, instanceId); return CreateResponse.success(new LwM2mPath(request.getPath().getObjectId(), instanceId).toString()); }
@Override public void visit(CreateRequest request) { coapRequest = Request.newPost(); coapRequest.getOptions().setContentFormat(request.getContentFormat().getCode()); // if no instance id, the client will assign it. int instanceId = request.getInstanceId() != null ? request.getInstanceId() : LwM2mObjectInstance.UNDEFINED; coapRequest.setPayload(encoder.encode(new LwM2mObjectInstance(instanceId, request.getResources()), request.getContentFormat(), request.getPath(), model)); setTarget(coapRequest, request.getPath()); }