feat: cleaned up the previous fix
This commit is contained in:
parent
a5ede2a6ad
commit
eec252cb16
@ -29,7 +29,7 @@ class InnerData:
|
|||||||
_refers_to_instances: set = None
|
_refers_to_instances: set = None
|
||||||
|
|
||||||
def __init__(self, object_type, **kwargs):
|
def __init__(self, object_type, **kwargs):
|
||||||
self._refers_to_instances = set()
|
self._refers_to_instances =set()
|
||||||
|
|
||||||
# initialize the default values
|
# initialize the default values
|
||||||
self.__default_values = {}
|
self.__default_values = {}
|
||||||
@ -105,6 +105,8 @@ class OuterProxy:
|
|||||||
|
|
||||||
self._fetched_from: dict = {}
|
self._fetched_from: dict = {}
|
||||||
self._inner: InnerData = InnerData(type(self), **kwargs)
|
self._inner: InnerData = InnerData(type(self), **kwargs)
|
||||||
|
self._inner._refers_to_instances.add(self)
|
||||||
|
|
||||||
self.__init_collections__()
|
self.__init_collections__()
|
||||||
|
|
||||||
for name, data_list in collection_data.items():
|
for name, data_list in collection_data.items():
|
||||||
@ -191,16 +193,11 @@ class OuterProxy:
|
|||||||
a, b = b, a
|
a, b = b, a
|
||||||
|
|
||||||
a._inner.__merge__(b._inner, override=override)
|
a._inner.__merge__(b._inner, override=override)
|
||||||
|
a._inner._refers_to_instances.update(b._inner._refers_to_instances)
|
||||||
|
|
||||||
if len(b._inner._refers_to_instances) > 1:
|
|
||||||
for instance in b._inner._refers_to_instances:
|
for instance in b._inner._refers_to_instances:
|
||||||
instance._inner = a._inner
|
instance._inner = a._inner
|
||||||
|
|
||||||
b._inner = a._inner
|
|
||||||
|
|
||||||
b._inner._refers_to_instances.add(a)
|
|
||||||
b._inner._refers_to_instances.add(b)
|
|
||||||
|
|
||||||
def mark_as_fetched(self, *url_hash_list: List[str]):
|
def mark_as_fetched(self, *url_hash_list: List[str]):
|
||||||
for url_hash in url_hash_list:
|
for url_hash in url_hash_list:
|
||||||
self._fetched_from[url_hash] = {
|
self._fetched_from[url_hash] = {
|
||||||
|
Loading…
Reference in New Issue
Block a user