def editImageMetadata(request): renderObj = WebServiceObject() # required parameters imageKey = request.PUT.get('id', None) if not imageKey: raise Errors.NO_IMAGE_KEY # these should overwrite current metadata description = request.PUT.get('description', None) altText = request.POST.get('altText', None) organisms = Util.getDelimitedList(request.PUT, 'organisms') fields = Util.getDelimitedList(request.PUT, 'fields') if description or organisms: putAPI = PutAPI(request.user, fields) renderObj = putAPI.editImageMetadata(imageKey, description, altText, organisms) else: raise Errors.NOT_MODIFIED return renderObj