def save(self, name, rc_file='~/.odoorpcrc'): """Save the current :class:`ODOO <odoorpc.ODOO>` instance (a `session`) inside `rc_file` (``~/.odoorpcrc`` by default). This session will be identified by `name`:: >>> import odoorpc >>> odoo = odoorpc.ODOO('localhost', port=8069) >>> odoo.login('db_name', 'admin', 'admin') >>> odoo.save('foo') Use the :func:`list <odoorpc.ODOO.list>` class method to list all stored sessions, and the :func:`load <odoorpc.ODOO.load>` class method to retrieve an already-connected :class:`ODOO <odoorpc.ODOO>` instance. *Python 2:* :raise: :class:`odoorpc.error.InternalError` (if not logged) :raise: `IOError` *Python 3:* :raise: :class:`odoorpc.error.InternalError` (if not logged) :raise: `PermissionError` :raise: `FileNotFoundError` """ self._check_logged_user() data = { 'type': self.__class__.__name__, 'host': self.host, 'protocol': self.protocol, 'port': self.port, 'timeout': self.config['timeout'], 'user': self._login, 'passwd': self._password, 'database': self.env.db, } session.save(name, data, rc_file)