If you want to add a property to an existing entity, you just "clone it" and add it.
Entity oldEntity = c.element();
Entity.Builder entityBuilder = Entity.newBuilder(oldEntity);
entityBuilder.addProperty(
DatastoreHelper.makeProperty("newProperty",
DatastoreHelper.makeValue("Value")
)
);
c.output(entityBuilder.build());
If you want to update a property, adding it again hoping to overwrite the old value won't work. It won't save to the datastore because a property's name must be unique, and now you'd have two with the same name.
Error writing to the Datastore (400): Entity has duplicate property name
If you want to remove a property, you need to know the index from the Property List, and for that you'd need to list all the properties, check if the property you want to update exists, keep track of the index number, and then remove it.
Is there a builtin helper for this procedure or a shortcut I'm missing?