Package org.eclipse.emf.cdo.server

# Schnittstelle IStore

Alle bekannten Unterschnittstellen:
  `IDBStore`, `ILissomeStore`, `IMEMStore`, `IMEMStore`, `IMongoDBStore`, `InternalStore`

Alle bekannten Implementierungsklassen:
  `LongIDStore`, `Store`

public interface IStore
Represents the physical data storage back-end of a CDO `repository`, such as a database or a file system folder.

Autor:
  Eike Stepper

## Verschachtelte Klassen - Übersicht

Verschachtelte Klassen
Modifizierer und Typ
Schnittstelle
Beschreibung
`static interface`
`IStore.CanHandleClientAssignedIDs`
A marker interface for `stores` that can handle `IDs` assigned by a `client`, typically `UUIDs`.
`static enum`
`IStore.ChangeFormat`
Enumerates the possible data formats a `store` can accept for commit operations.
`static enum`
`IStore.RevisionParallelism`
Enumerates the possible branching options a `store` can accept.
`static enum`
`IStore.RevisionTemporality`
Enumerates the possible history recording options a `store` can accept.

## Methodenübersicht

Modifizierer und Typ
Methode
Beschreibung
`CDOID`
`createObjectID(String val)`
`long`
`getCreationTime()`
Returns the store creation time.
`org.eclipse.net4j.util.om.monitor.ProgressDistributor`
`getIndicatingCommitDistributor()`
`int`
`getLastBranchID()`
Returns the id of the last branch that has been created in this store.
`long`
`getLastCommitTime()`
Returns the time stamp of the last successful commit operation.
`int`
`getLastLocalBranchID()`
Returns the id of the last local branch that has been created in this store.
`long`
`getLastNonLocalCommitTime()`
Returns the time stamp of the last successful commit operation to a non-local `branch`.
`Set<CDOID.ObjectType>`
`getObjectIDTypes()`
`Map<String,String>`
`getPersistentProperties(Set<String> names)`
Returns a map filled with the property entries for the requested property `names` if names is not `null` and not `empty`, all existing property entries otherwise.
`IStoreAccessor`
`getReader(ISession session)`
Returns a reader that can be used to read from this store in the context of the given session.
`IRepository`
`getRepository()`
`IStore.RevisionParallelism`
`getRevisionParallelism()`
`IStore.RevisionTemporality`
`getRevisionTemporality()`
`Set<IStore.ChangeFormat>`
`getSupportedChangeFormats()`
`Set<IStore.RevisionParallelism>`
`getSupportedRevisionParallelisms()`
`Set<IStore.RevisionTemporality>`
`getSupportedRevisionTemporalities()`
`String`
`getType()`
`IStoreAccessor`
`getWriter(ITransaction transaction)`
Returns a writer that can be used to write to this store in the context of the given view.
`boolean`
`isFirstStart()`
Returns `true`if this store was activated for the first time, `false` otherwise.
`void`
`removePersistentProperties(Set<String> names)`
`void`
`setPersistentProperties(Map<String,String> properties)`

## Methodendetails

### getRepository

IRepository getRepository()

Seit:
  2.0

### getType

String getType()

Seit:
  2.0

### getObjectIDTypes

Set<CDOID.ObjectType> getObjectIDTypes()

Seit:
  3.0

### createObjectID

CDOID createObjectID(String val)

Seit:
  4.0

### getSupportedChangeFormats

Set<IStore.ChangeFormat> getSupportedChangeFormats()

Seit:
  2.0

### getSupportedRevisionTemporalities

Set<IStore.RevisionTemporality> getSupportedRevisionTemporalities()

Seit:
  2.0

### getSupportedRevisionParallelisms

Set<IStore.RevisionParallelism> getSupportedRevisionParallelisms()

Seit:
  2.0

### getRevisionTemporality

IStore.RevisionTemporality getRevisionTemporality()

Seit:
  2.0

### getRevisionParallelism

IStore.RevisionParallelism getRevisionParallelism()

Seit:
  2.0

### isFirstStart

boolean isFirstStart()
Returns `true`if this store was activated for the first time, `false` otherwise.

Seit:
  4.0

### getCreationTime

long getCreationTime()
Returns the store creation time.

Seit:
  2.0

### getLastBranchID

int getLastBranchID()
Returns the id of the last branch that has been created in this store.

Seit:
  3.0

### getLastLocalBranchID

int getLastLocalBranchID()
Returns the id of the last local branch that has been created in this store.

Seit:
  3.0

### getLastCommitTime

long getLastCommitTime()
Returns the time stamp of the last successful commit operation.

Seit:
  3.0

### getLastNonLocalCommitTime

long getLastNonLocalCommitTime()
Returns the time stamp of the last successful commit operation to a non-local `branch`.

Seit:
  3.0

### getPersistentProperties

Map<String,String> getPersistentProperties(Set<String> names)
Returns a map filled with the property entries for the requested property `names` if names is not `null` and not `empty`, all existing property entries otherwise.

Seit:
  4.0

### setPersistentProperties

void setPersistentProperties(Map<String,String> properties)

Seit:
  4.0

### removePersistentProperties

void removePersistentProperties(Set<String> names)

Seit:
  4.0

### getReader

IStoreAccessor getReader(ISession session)
Returns a reader that can be used to read from this store in the context of the given session.

Parameter:
  `session` - The session that should be used as a context for read access or `null`. The store implementor is free to interpret and use the session in a manner suitable for him or ignore it at all. It is meant only as a hint. Implementor can use it as a key into a cache and/or register a `LifecycleEventAdapter` with it to intercept cleanup on session close. Note however that the session can be `null`, for example during startup of the server while the repositories are initialized but before any user session has been opened.
Gibt zurück:
  a reader that can be used to read from this store in the context of the given session, never `null`.
Seit:
  2.0

### getWriter

IStoreAccessor getWriter(ITransaction transaction)
Returns a writer that can be used to write to this store in the context of the given view. The given view is always marked as a transaction.

Parameter:
  `transaction` - The view that must be used as a context for write access. The store implementor is free to interpret and use the view in a manner suitable for him or ignore it at all. It is meant only as a hint. Implementor can use it as a key into a cache and/or register a `LifecycleEventAdapter` with it to intercept cleanup on view close.
Gibt zurück:
  a writer that can be used to write to this store in the context of the given view, never `null`.
Seit:
  2.0

### getIndicatingCommitDistributor

org.eclipse.net4j.util.om.monitor.ProgressDistributor getIndicatingCommitDistributor()

Seit:
  2.0