@utilities.arguments_not_none<EOL><INDENT>def get_asset_notification_session_for_repository(self, asset_receiver, repository_id, proxy):<DEDENT>
if not self.supports_asset_notification():<EOL><INDENT>raise errors.Unimplemented()<EOL><DEDENT>return sessions.AssetNotificationSession(catalog_id=repository_id, proxy=proxy, runtime=self._runtime, receiver=asset_receiver)<EOL>
Gets the asset notification session for the given repository.

        arg:    asset_receiver (osid.repository.AssetReceiver): the
                notification callback
        arg:    repository_id (osid.id.Id): the ``Id`` of the repository
        arg:    proxy (osid.proxy.Proxy): a proxy
        return: (osid.repository.AssetNotificationSession) - an
                ``AssetNotificationSession``
        raise:  NotFound - ``repository_id`` not found
        raise:  NullArgument - ``asset_receiver, repository_id`` or
                ``proxy`` is ``null``
        raise:  OperationFailed - ``unable to complete request``
        raise:  Unimplemented - ``supports_asset_notification()`` or
                ``supports_visible_federation()`` is ``false``
        *compliance: optional -- This method must be implemented if
        ``supports_asset_notfication()`` and
        ``supports_visible_federation()`` are ``true``.*