01: /*
02: * Copyright Aduna (http://www.aduna-software.com/) (c) 1997-2006.
03: *
04: * Licensed under the Aduna BSD-style license.
05: */
06: package org.openrdf.sail.nativerdf.model;
07:
08: import org.openrdf.model.Value;
09: import org.openrdf.sail.nativerdf.ValueStoreRevision;
10:
11: public interface NativeValue extends Value {
12:
13: public static final int UNKNOWN_ID = -1;
14:
15: /**
16: * Sets the ID that is used for this value in a specific revision of the
17: * value store.
18: */
19: public void setInternalID(int id, ValueStoreRevision revision);
20:
21: /**
22: * Gets the ID that is used in the native store for this Value.
23: *
24: * @return The value's ID, or {@link #UNKNOWN_ID} if not yet set.
25: */
26: public int getInternalID();
27:
28: /**
29: * Gets the revision of the value store that created this value. The value's
30: * internal ID is only valid when it's value store revision is equal to the
31: * value store's current revision.
32: *
33: * @return The revision of the value store that created this value at the
34: * time it last set the value's internal ID.
35: */
36: public ValueStoreRevision getValueStoreRevision();
37: }
|