<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _register_notification_callback(self, connection_handle, attribute_handle, callback, once=False):
 """Register a callback as a notification callback. It will be called if a notification with the matching connection_handle and attribute_handle is received. Args: connection_handle (int):
 The connection handle to watch attribute_handle (int):
 The attribute handle to watch callback (func):
 The callback function to call once the notification has been received once (bool):
 Should the callback only be called once (and then removed from the notification callbacks) """

        notification_id = (connection_handle, attribute_handle)
        with self.notification_callbacks_lock:
            self.notification_callbacks[notification_id] = (callback, once)