| | 739 | key = self._makeRepresentationKey(name, **kwargs) |
|---|
| | 740 | if key in self._representations: |
|---|
| | 741 | del self._representations[key] |
|---|
| | 742 | |
|---|
| | 743 | def destroyAllRepresentations(self, notification=None): |
|---|
| | 744 | self._representations = {} |
|---|
| | 745 | |
|---|
| | 746 | def getRepresentation(self, name, **kwargs): |
|---|
| | 747 | key = self._makeRepresentationKey(name, **kwargs) |
|---|
| | 748 | if key not in self._representations: |
|---|
| | 749 | factory = _representationFactories[name] |
|---|
| | 750 | representation = factory(self, self.getParent(), **kwargs) |
|---|
| | 751 | self._representations[key] = representation |
|---|
| | 752 | return self._representations[key] |
|---|
| | 753 | |
|---|
| | 754 | def hasCachedRepresentation(self, name, **kwargs): |
|---|
| | 755 | key = self._makeRepresentationKey(name, **kwargs) |
|---|
| | 756 | return key in self._representations |
|---|
| | 757 | |
|---|
| | 758 | def _makeRepresentationKey(self, name, **kwargs): |
|---|
| 744 | | if key in self._representations: |
|---|
| 745 | | del self._representations[key] |
|---|
| 746 | | |
|---|
| 747 | | def destroyAllRepresentations(self, notification=None): |
|---|
| 748 | | self._representations = {} |
|---|
| 749 | | |
|---|
| 750 | | def getRepresentation(self, name, **kwargs): |
|---|
| 751 | | if kwargs: |
|---|
| 752 | | key = [name] + sorted(kwargs.items()) |
|---|
| 753 | | key = tuple(key) |
|---|
| 754 | | else: |
|---|
| 755 | | key = name |
|---|
| 756 | | if key not in self._representations: |
|---|
| 757 | | factory = _representationFactories[name] |
|---|
| 758 | | representation = factory(self, self.getParent(), **kwargs) |
|---|
| 759 | | self._representations[key] = representation |
|---|
| 760 | | return self._representations[key] |
|---|
| | 764 | return key |
|---|