def create_segment_full_uri(self, _uri): """Creates segment by full path @param _uri: segment path @type _uri: str @return created segment """ self.lock.acquire() try: res = pm.create_segment_full_path(self.__session, _uri.encode("cp1251")) finally: self.lock.release() return res
def create_el_full_uri(self, _uri, _type): """Creates sc-element by full uri @param _uri: element uri (paht) @type _uri: str @param _type: element type @type _type: sc_type @return: tuple (<bool>, <sc_global_addr>). First element of tuple is true, when element created, else it will be false """ str = _uri.encode("cp1251") segm = None name = None h_s = None h_el = None ind = 0 ind = str.rfind('/') if ind != -1: name = str[ind + 1:len(str)] segm = str[0:ind] created = False self.lock.acquire() h_s = pm.create_segment_full_path(self.__session, segm) h_el = self.__session.find_by_idtf(name, h_s) if h_el == None: h_el = self.__session.create_el(h_s, _type) self.__session.set_idtf(h_el, name) created = True self.lock.release() return (created, h_el) else: raise RuntimeError("Invalid uri '%s'" % _uri)
def create_el_full_uri(self, _uri, _type = pm.SC_N_CONST): """Creates sc-element by full uri @param _uri: element uri (paht) @type _uri: str @param _type: element type @type _type: sc_type @return: tuple (<bool>, <sc_global_addr>). First element of tuple is true, when element created, else it will be false """ str = _uri.encode("cp1251") segm = None name = None h_s = None h_el = None ind = 0 ind = str.rfind('/') if ind != -1: name = str[ind + 1:len(str)] segm = str[0:ind] created = False self.lock.acquire() h_s = pm.create_segment_full_path(self.__session, segm) h_el = self.__session.find_by_idtf(name, h_s) if h_el == None: h_el = self.__session.create_el(h_s, _type) self.__session.set_idtf(h_el, name) created = True self.lock.release() return (created, h_el) else: raise RuntimeError("Invalid uri '%s'" % _uri)