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;
14 import org.simantics.utils.Container;
17 * A Graph independent reference to a resource. These can be stored between
18 * transactions and later used with any {@link RequestProcessor} or
19 * {@link AsyncRequestProcessor} that originates from a Session with the same
23 * Resources are considered implementation dependent. Therefore
24 * <code>Resource</code> instances from different implementations of this
25 * database connection API should not be used together.
29 * This interface should not be implemented by clients.
32 * @author Tuukka Lehtonen
37 public interface Resource extends Container<Resource>, Comparable<Resource> {
39 Resource[] NONE = new Resource[0];
45 boolean isPersistent();
47 boolean equalsResource(Resource other);