class UploadMetadata(forms.SelfHandlingForm): image_meta_file = forms.FileField(label="Image Metadata File", required=True) def handle(self, request, data): if self.files['image_meta_file'].size > 1024 * 1024 * 256: messages.error(request, 'Metadata content is too big (more than 256MB)') data = self.files['image_meta_file'].read() try: data.encode('ascii') except UnicodeEncodeError, e: messages.error( request, 'Metadata content contains non ASCII character : %s' % str(e)) return try: root = etree.XML(data) except etree.XMLSyntaxError, e: messages.error(request, 'Metadata content is invalid %s' % str(e)) return
class UploadObject(forms.SelfHandlingForm): name = forms.CharField(max_length="255", label="Object Name") object_file = forms.FileField(label="File") container_name = forms.CharField(widget=forms.HiddenInput()) def handle(self, request, data): try: file = self.files['object_file'] cont = data['container_name'] cont = cont.encode('utf-8') obj = data['name'] obj = obj.encode('utf-8') obj = obj.replace('/', '%2F') api.swift_upload_object_with_manifest( request, cont, obj, file, request.session.get('storage_url', None)) messages.success(request, "Object was successfully uploaded.") except Exception as e: messages.error(request, "Upload Object was failed (%s)" % str(e)) finally: try: if getattr(file, 'temporary_file_path', None): name = file.temporary_file_path() file.close() os.remove(name) except Exception, e: LOG.exception('file delete failed %s' % str(e)) return None
class UploadMetadata(forms.SelfHandlingForm): image_meta_file = forms.FileField(label="Image Metadata File", required=True) def handle(self, request, data): data = self.files['image_meta_file'].read() try: root = etree.XML(data) except etree.XMLSyntaxError, e: messages.error(request, 'Metadata content is invalid') return image = {} image['name'] = root.findtext("name") image['location'] = root.findtext("location") image['is_public'] = True image['owner'] = request.user.username disk_format = root.findtext("format/disk") container_format = root.findtext("format/container") min_disk = root.findtext("info/min_disk") min_ram = root.findtext("info/min_ram") try: api.image_create(request, image, None) messages.success(request, "Image Metadata was successfully registerd") except glance_exception.BadStoreUri as e: messages.error(request, 'hogehoge %s' % str(e)) return shortcuts.redirect(request.build_absolute_uri())
class UploadObject(forms.SelfHandlingForm): name = forms.CharField(max_length="255", label=_("Object Name")) object_file = forms.FileField(label=_("File")) container_name = forms.CharField(widget=forms.HiddenInput()) def handle(self, request, data): api.swift_upload_object(request, data['container_name'], data['name'], self.files['object_file'].read()) messages.success(request, _("Object was successfully uploaded.")) return shortcuts.redirect(request.build_absolute_uri())
class UploadObject(forms.SelfHandlingForm): name = forms.CharField(max_length="255", label="Object Name") object_file = forms.FileField(label="File") container_name = forms.CharField(widget=forms.HiddenInput()) def handle(self, request, data): try: file = self.files['object_file'] cont = data['container_name'] cont = cont.encode('utf-8') obj = data['name'] obj = obj.encode('utf-8') api.swift_upload_object_with_manifest(request, cont, obj, file) messages.success(request, "Object was successfully uploaded.") except Exception as e: messages.error(request, "Upload Object was failed (%s)" % str(e)) return shortcuts.redirect(request.build_absolute_uri())