def file_name(self): file_name = self._file_name # derive file name from headers if file_name is None and 'content_disposition' in self.headers: _, attrs = cgi.parse_header(self.headers['content_disposition']) file_name = chomp(attrs.get('filename')) if file_name is None and self.source_path: file_name = os.path.basename(self.source_path) if file_name is None and self.source_url: parsed = urlparse(self.source_url) file_name = os.path.basename(parsed.path) return make_filename(file_name) or 'data'
def extension(self, extension): self._extension = chomp(extension)
def add_phone_number(self, number): number = chomp(number) if number and number not in self._phone_numbers: self._phone_numbers.append(number)
def foreign_id(self, foreign_id): self._foreign_id = chomp(foreign_id)
def add_country(self, country): country = chomp(country, lower=True) if is_country_code(country) and country not in self._countries: self._countries.append(country)
def add_keyword(self, kw): kw = chomp(kw) if kw is not None and kw not in self._keywords: self._keywords.append(kw)
def file_name(self, file_name): self._file_name = chomp(file_name)
def add_language(self, language): lang = chomp(language, lower=True) if is_language_code(lang) and lang not in self._languages: self._languages.append(lang)
def mime_type(self, mime_type): self._mime_type = chomp(mime_type)
def title(self, title): self._title = chomp(title)