implement content provider's update function