docs: def get_repository_notification_session(self, repository_receiver, proxy):
          """Gets the notification session for subscribing to changes to a
          repository.
  
          arg:    repository_receiver
                  (osid.repository.RepositoryReceiver): the notification
                  callback
          arg     proxy (osid.proxy.Proxy): a proxy
          return: (osid.repository.RepositoryNotificationSession) - a
                  RepositoryNotificationSession
          raise:  NullArgument - repository_receiver is null
          raise:  OperationFailed - unable to complete request
          raise:  Unimplemented - supports_repository_notification() is
                  false
          compliance: optional - This method must be implemented if
                      supports_repository_notification() is true.
  
          """
          if repository_receiver is None:
              raise NullArgument()
          if not self.supports_repository_notification():
              raise Unimplemented()
          try:
              from . import sessions
          except ImportError:
              raise  # OperationFailed()
          proxy = self._convert_proxy(proxy)
          try:
              session = sessions.RepositoryNotificationSession(repository_receiver, proxy, runtime=self._runtime)
          except AttributeError:
              raise  # OperationFailed()
          return session