# High level interface to the isofs library. import core import defines def _wrap_volume_property(var_name, core_setter): def get(self): return getattr(self, var_name) def set(self, value): setattr(self, var_name, value) core_setter(self._volume, value) return property(get, set) class IsoFS(object): def __init__(self, volume_id='', publisher_id='', data_preparer_id=''): self._volume_id = volume_id self._publisher_id = publisher_id self._data_preparer_id = data_preparer_id self._volume = core.iso_volume_new( volume_id, publisher_id, data_preparer_id) self._volset = core.iso_volset_new(self._volume, volume_id) volume_id = _wrap_volume_property( '_volume_id', core.iso_volume_set_volume_id) publisher_id = _wrap_volume_property( '_publisher_id', core.iso_volume_set_publisher_id) data_preparer_id = _wrap_volume_property( '_data_preparer_id', core.iso_volume_set_data_preparer_id)