예제 #1
0
 def render_POST(self, req):
     """
     "POST /uri?t=upload&file=newfile" to upload an
     unlinked file or "POST /uri?t=mkdir" to create a
     new directory
     """
     t = get_arg(req, "t", "").strip()
     if t in ("", "upload"):
         file_format = get_format(req)
         mutable_type = get_mutable_type(file_format)
         if mutable_type is not None:
             return unlinked.POSTUnlinkedSSK(req, self.client, mutable_type)
         else:
             return unlinked.POSTUnlinkedCHK(req, self.client)
     if t == "mkdir":
         return unlinked.POSTUnlinkedCreateDirectory(req, self.client)
     elif t == "mkdir-with-children":
         return unlinked.POSTUnlinkedCreateDirectoryWithChildren(req,
                                                                 self.client)
     elif t == "mkdir-immutable":
         return unlinked.POSTUnlinkedCreateImmutableDirectory(req,
                                                              self.client)
     errmsg = ("/uri accepts only PUT, PUT?t=mkdir, POST?t=upload, "
               "and POST?t=mkdir")
     raise WebError(errmsg, http.BAD_REQUEST)
예제 #2
0
 def render_POST(self, ctx):
     # "POST /uri?t=upload&file=newfile" to upload an
     # unlinked file or "POST /uri?t=mkdir" to create a
     # new directory
     req = IRequest(ctx)
     t = get_arg(req, "t", "").strip()
     if t in ("", "upload"):
         mutable = bool(get_arg(req, "mutable", "").strip())
         if mutable:
             return unlinked.POSTUnlinkedSSK(req, self.client)
         else:
             return unlinked.POSTUnlinkedCHK(req, self.client)
     if t == "mkdir":
         return unlinked.POSTUnlinkedCreateDirectory(req, self.client)
     elif t == "mkdir-with-children":
         return unlinked.POSTUnlinkedCreateDirectoryWithChildren(req,
                                                                 self.client)
     elif t == "mkdir-immutable":
         return unlinked.POSTUnlinkedCreateImmutableDirectory(req,
                                                              self.client)
     errmsg = ("/uri accepts only PUT, PUT?t=mkdir, POST?t=upload, "
               "and POST?t=mkdir")
     raise WebError(errmsg, http.BAD_REQUEST)