def set_property(self, key, value): try: if value is None: self.__delitem__(key) else: self.setProperty(key, to_java(value)) except: rethrow_current_exception_as(Exception)
def get_property(self, key, default=None): try: v = from_java(self.getProperty(key, None)) return v if v != None else default except: rethrow_current_exception_as(Exception)
def __delitem__(self, key): try: return self.removeProperty(key) except: rethrow_current_exception_as(KeyError)