aboutsummaryrefslogtreecommitdiff
blob: 0bf6bab2c7f41b40f250568e2481ded87a9ea163 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

import copy
from portage.cache import template

class database(template.database):

	autocommits = True
	serialize_eclasses = False

	def __init__(self, *args, **config):
		config.pop("gid", None)
		config.pop("perms", None)
		super(database, self).__init__(*args, **config)
		self._data = {}
		self.__iter__ = self._data.__iter__
		self._delitem = self._data.__delitem__
		self.__contains__ = self._data.__contains__

	def _setitem(self, name, values):
		self._data[name] = copy.deepcopy(values)

	def _getitem(self, cpv):
		return copy.deepcopy(self._data[cpv])