You are currently browsing legacy 3.0 version of documentation. Click here to switch to the newest 4.2 version.

We can help you with migration to the latest RavenDB

Contact Us Now
see on GitHub

What are listeners?

The concept of listeners provides users with a mechanism to perform custom actions, in response to operations taken in a session. The listener implements an interface whose methods are called when a particular action is executed on an file.

The main object is FilesSessionListeners exposed by IFilesStore. It aggregates listeners of the following types:

  • file delete listeners (IFilesDeleteListener),
  • file metadata change listeners (IMetadataChangeListener),
  • file conflicts listeners (IFilesConflictListener).

You can register any number of listeners for a given type. You can either set the whole collection of listeners at once by calling:

store.SetListeners(new FilesSessionListeners
{
	DeleteListeners = new IFilesDeleteListener[] { /* ... */ },
	ConflictListeners = new IFilesConflictListener[] { /* ... */ },
	MetadataChangeListeners = new IMetadataChangeListener[] { /* ... */ }
});

or register a particular listener by the following method:

store.Listeners.RegisterListener(new SampleListener());