MCPcopy Create free account
hub / github.com/IfcOpenShell/IfcOpenShell / save

Method save

src/bcf/bcf/v3/bcfxml.py:163–176  ·  view source on GitHub ↗

Save the BCF file to the given filename.

(self, filename: Optional[Path] = None, keep_open: bool = False)

Source from the content-addressed store, hash-verified

161 return instance
162
163 def save(self, filename: Optional[Path] = None, keep_open: bool = False) -> None:
164 """Save the BCF file to the given filename."""
165 if not filename and not self._filename:
166 raise ValueError("No file name specified, cannot save BCF file.")
167 if filename:
168 self._filename = filename
169 with InMemoryZipFile(self._filename) as bcf_zip:
170 self._save_project(bcf_zip)
171 self._save_version(bcf_zip)
172 self._save_extensions(bcf_zip)
173 self._save_documents(bcf_zip)
174 self._save_topics(bcf_zip)
175 if keep_open:
176 self._zip_file = self._load_zip_file()
177
178 def _save_project(self, destination_zip: ZipFileInterface) -> None:
179 self._smart_save_xml(destination_zip, self._project_info, "project.bcfp")

Callers 3

save_projectMethod · 0.95
_save_documentsMethod · 0.45
_save_topicsMethod · 0.45

Calls 7

_save_projectMethod · 0.95
_save_versionMethod · 0.95
_save_extensionsMethod · 0.95
_save_documentsMethod · 0.95
_save_topicsMethod · 0.95
_load_zip_fileMethod · 0.95
InMemoryZipFileClass · 0.90

Tested by

no test coverage detected