diff --git a/python/src/ipaaca.py b/python/src/ipaaca.py index cd31264212aaac9f8e6e1080651923675903118e..7055bddce657aeef593a75b796c8bf766d721959 100755 --- a/python/src/ipaaca.py +++ b/python/src/ipaaca.py @@ -295,6 +295,7 @@ class IU(IUInterface):#{{{ def __init__(self, category='undef', access_mode=IUAccessMode.PUSH, read_only=False, _payload_type='MAP'): super(IU, self).__init__(uid=None, access_mode=access_mode, read_only=read_only) self._revision = 1 + self.uid = str(uuid.uuid4()) self._category = category self._payload_type = _payload_type self.revision_lock = threading.RLock() @@ -391,7 +392,7 @@ class IU(IUInterface):#{{{ uid = property( fget=IUInterface._get_uid, fset=_set_uid, - doc='Unique ID of theIU.') + doc='Unique ID of the IU.') #}}} @@ -939,7 +940,7 @@ class OutputBuffer(Buffer): self._informer_store = {} self._id_prefix = str(owning_component_name)+'-'+str(self._uuid)+'-IU-' self.__iu_id_counter_lock = threading.Lock() - self.__iu_id_counter = 0 + #self.__iu_id_counter = 0 # hbuschme: IUs now have their Ids assigned on creation def _create_own_name_listener(self, iu_category): # FIXME replace this @@ -952,12 +953,13 @@ class OutputBuffer(Buffer): #logger.info("Added category listener for "+iu_category) #return cat_listener - def _generate_iu_uid(self): - '''Generate a unique IU id of the form''' - with self.__iu_id_counter_lock: - self.__iu_id_counter += 1 - number = self.__iu_id_counter - return self._id_prefix + str(number) + # hbuschme: IUs now have their Ids assigned on creation + #def _generate_iu_uid(self): + # '''Generate a unique IU id of the form ????''' + # with self.__iu_id_counter_lock: + # self.__iu_id_counter += 1 + # number = self.__iu_id_counter + # return self._id_prefix + str(number) def _remote_update_links(self, update): '''Apply a remotely requested update to one of the stored IU's links.''' @@ -1032,9 +1034,10 @@ class OutputBuffer(Buffer): def add(self, iu): '''Add an IU to the IU store, assign an ID and publish it.''' - if iu._uid is not None: - raise IUPublishedError(iu) - iu.uid = self._generate_iu_uid() + # hbuschme: IUs now have their Ids assigned on creation + #if iu._uid is not None: + # raise IUPublishedError(iu) + #iu.uid = self._generate_iu_uid() self._iu_store[iu._uid] = iu iu.buffer = self self._publish_iu(iu)