def _saveMetadata(self, force=False): if not self._metadataDirty and not force: return with self._metadataFileAccessMutex: with open(self._metadataTempFile, "wb") as f: yaml.safe_dump(self._metadata, f, default_flow_style=False, indent=" ", allow_unicode=True) self._metadataDirty = False util.safeRename(self._metadataTempFile, self._metadataFile) self._loadMetadata()
def _save_metadata(self, path, metadata): metadata_path = os.path.join(path, ".metadata.yaml") fh, metadata_temporary_path = tempfile.mkstemp() os.close(fh) with self._metadata_lock: try: with open(metadata_temporary_path, "w") as f: import yaml yaml.safe_dump(metadata, stream=f, default_flow_style=False, indent=" ", allow_unicode=True) safeRename(metadata_temporary_path, metadata_path, throw_error=True) except: self._logger.exception("Error while writing .metadata.yaml to {path}".format(**locals())) else: self._metadata_cache[path] = metadata
def save(self, target): util.safeRename(self._path, target)