1 /*******************************************************************************
2 * Copyright (c) 2007, 2010 Association for Decentralized Information Management
4 * All rights reserved. This program and the accompanying materials
5 * are made available under the terms of the Eclipse Public License v1.0
6 * which accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * VTT Technical Research Centre of Finland - initial API and implementation
11 *******************************************************************************/
12 package org.simantics.db.event;
14 import org.simantics.db.ReadGraph;
15 import org.simantics.db.Session;
16 import org.simantics.db.exception.DatabaseException;
19 * A listener added to a Session for receiving notifications for completed
22 * @see GraphChangeEvent
25 public interface ChangeListener {
28 * The listener gets a read lock along with the event (a {@link ReadGraph}
29 * instance). This method should be implemented so that it never blocks.
31 * The ChangeSet contained by the received event should only contain the
32 * changes that intersect with the working set of the listener's Session.
34 void graphChanged(ChangeEvent e) throws DatabaseException;