def updateAttachment(self, rurl, managed_id, filename, data, contentType, return_representation): assert (isinstance(rurl, URL)) # Create WebDAV POST rurl.extended = "?action=attachment-update&managed-id=%s" % ( managed_id, ) request = Post(self, rurl.relativeURL()) request.setRequestHeader("Content-Disposition", "attachment;filename=%s" % (filename, )) if return_representation: request.setRequestHeader("Prefer", "return-representation") dout = RequestDataString(data, contentType) request.setData(dout, None) # Process it self.runSession(request) # Check response status if request.getStatusCode() not in ( statuscodes.OK, statuscodes.Created, statuscodes.NoContent, ): self.handleHTTPError(request)
def removeAttachment(self, rurl, managed_id): assert(isinstance(rurl, URL)) # Create WebDAV POST rurl.extended = "?action=attachment-remove&managed-id=%s" % (managed_id,) request = Post(self, rurl.relativeURL()) # Process it self.runSession(request) # Check response status if request.getStatusCode() not in (statuscodes.OK, statuscodes.NoContent,): self.handleHTTPError(request)
def importData(self, rurl, data, contentType): assert(isinstance(rurl, URL)) # Create WebDAV POST request = Post(self, rurl.relativeURL()) dout = RequestDataString(data, contentType) request.setData(dout, None) # Process it self.runSession(request) # Check response status if request.getStatusCode() not in (statuscodes.OK, statuscodes.MultiStatus, statuscodes.NoContent,): self.handleHTTPError(request)
def removeAttachment(self, rurl, managed_id): assert (isinstance(rurl, URL)) # Create WebDAV POST rurl.extended = "?action=attachment-remove&managed-id=%s" % ( managed_id, ) request = Post(self, rurl.relativeURL()) # Process it self.runSession(request) # Check response status if request.getStatusCode() not in ( statuscodes.OK, statuscodes.NoContent, ): self.handleHTTPError(request)
def importData(self, rurl, data, contentType): assert (isinstance(rurl, URL)) # Create WebDAV POST request = Post(self, rurl.relativeURL()) dout = RequestDataString(data, contentType) request.setData(dout, None) # Process it self.runSession(request) # Check response status if request.getStatusCode() not in ( statuscodes.OK, statuscodes.MultiStatus, statuscodes.NoContent, ): self.handleHTTPError(request)
def updateAttachment(self, rurl, managed_id, filename, data, contentType, return_representation): assert(isinstance(rurl, URL)) # Create WebDAV POST rurl.extended = "?action=attachment-update&managed-id=%s" % (managed_id,) request = Post(self, rurl.relativeURL()) request.setRequestHeader("Content-Disposition", "attachment;filename=%s" % (filename,)) if return_representation: request.setRequestHeader("Prefer", "return-representation") dout = RequestDataString(data, contentType) request.setData(dout, None) # Process it self.runSession(request) # Check response status if request.getStatusCode() not in (statuscodes.OK, statuscodes.Created, statuscodes.NoContent,): self.handleHTTPError(request)
def writeData(self, rurl, data, contentType, etag=None, method="PUT"): assert (isinstance(rurl, URL)) # Create WebDAV PUT if method == "PUT": request = Put(self, rurl.relativeURL()) elif method == "POST": request = Post(self, rurl.relativeURL()) elif method == "OPTIONS": request = Options(self, rurl.relativeURL()) dout = ResponseDataString() if data is not None: din = RequestDataString(data, contentType) if method == "PUT": request.setData(din, dout, etag=etag) elif method == "POST": request.setData(din, dout) else: request.setData(None, dout) # Process it self.runSession(request) # Check response status if request.getStatusCode() not in ( statuscodes.OK, statuscodes.Created, statuscodes.NoContent, ): self.handleHTTPError(request) # Return data as a string return dout.getData()