Package org.eclipse.emf.cdo.spi.common.admin

# Class AbstractCDOAdmin

java.lang.Object
org.eclipse.net4j.util.event.Notifier
org.eclipse.net4j.util.lifecycle.Lifecycle
org.eclipse.net4j.util.lifecycle.ShareableLifecycle
org.eclipse.net4j.util.container.Container<CDOAdminRepository>
org.eclipse.net4j.util.container.ModifiableContainer<CDOAdminRepository>
org.eclipse.net4j.util.container.PersistableContainer<CDOAdminRepository>
org.eclipse.net4j.util.container.SetContainer<CDOAdminRepository>
org.eclipse.emf.cdo.spi.common.admin.AbstractCDOAdmin

All Implemented Interfaces:
  `CDOAdmin`, `org.eclipse.net4j.util.collection.Closeable`, `org.eclipse.net4j.util.container.IContainer<CDOAdminRepository>`, `org.eclipse.net4j.util.container.IContainer.Modifiable<CDOAdminRepository>`, `org.eclipse.net4j.util.container.IContainer.Persistable<CDOAdminRepository>`, `org.eclipse.net4j.util.event.INotifier`, `org.eclipse.net4j.util.event.INotifier.INotifier2`, `org.eclipse.net4j.util.lifecycle.IDeactivateable`, `org.eclipse.net4j.util.lifecycle.ILifecycle`, `org.eclipse.net4j.util.lifecycle.ILifecycle.DeferrableActivation`

public abstract class AbstractCDOAdmin extends org.eclipse.net4j.util.container.SetContainer<CDOAdminRepository> implements CDOAdmin
If the meaning of this type isn't clear, there really should be more of a description here...

Since:
  4.1
Author:
  Eike Stepper

## Nested Class Summary

## Nested classes/interfaces inherited from class org.eclipse.net4j.util.event.Notifier

`org.eclipse.net4j.util.event.Notifier.Cancelation`

## Nested classes/interfaces inherited from interface org.eclipse.net4j.util.container.IContainer

`org.eclipse.net4j.util.container.IContainer.Modifiable<E>, org.eclipse.net4j.util.container.IContainer.Persistable<E>, org.eclipse.net4j.util.container.IContainer.Persistence<E>`

## Nested classes/interfaces inherited from interface org.eclipse.net4j.util.lifecycle.ILifecycle

`org.eclipse.net4j.util.lifecycle.ILifecycle.DeferrableActivation`

## Nested classes/interfaces inherited from interface org.eclipse.net4j.util.event.INotifier

`org.eclipse.net4j.util.event.INotifier.INotifier2`

## Field Summary

### Fields inherited from class org.eclipse.net4j.util.lifecycle.Lifecycle

`USE_LABEL`

### Fields inherited from interface org.eclipse.emf.cdo.common.admin.CDOAdmin

`DEFAULT_TYPE, PROPERTY_SECURITY_HOME_FOLDERS, PROPERTY_SECURITY_MANAGER, PROPERTY_STORE_XML_CONFIG`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`AbstractCDOAdmin(long timeout)`

## Method Summary

Modifier and Type
Method
Description
`void`
`close()`
`CDOAdminRepository`
`createRepository(String name, String type, Map<String,Object> properties)`
Creates a new remote `repository` and returns its administrative interface.
`boolean`
`deleteRepository(CDOAdminRepository repository, String type)`
`protected abstract boolean`
`doCreateRepository(String name, String type, Map<String,Object> properties)`
`protected abstract boolean`
`doDeleteRepository(String name, String type)`
`CDOAdminRepository[]`
`getRepositories()`
`CDOAdminRepository`
`getRepository(String name)`
`final long`
`getTimeout()`
`boolean`
`isClosed()`
`protected CDOAdminRepository[]`
`sortElements(CDOAdminRepository[] array)`
`protected boolean`
`validateElement(CDOAdminRepository repository)`
`CDOAdminRepository`
`waitForRepository(String name)`

### Methods inherited from class org.eclipse.net4j.util.container.SetContainer

`backingStoreAdd, backingStoreClear, backingStoreContains, backingStoreForEach, backingStoreIsEmpty, backingStoreRemove, backingStoreSize, backingStoreToArray, getSet`

### Methods inherited from class org.eclipse.net4j.util.container.PersistableContainer

`containerModified, doActivate, doDeactivate, getPersistence, isSavedWhenModified, load, save, setPersistence`

### Methods inherited from class org.eclipse.net4j.util.container.ModifiableContainer

`addAllElements, addElement, clear, elementAdded, elementRemoved, firstElementAdded, getComponentType, getElements, isEmpty, lastElementRemoved, removeAllElements, removeElement`

### Methods inherited from class org.eclipse.net4j.util.container.Container

`fireContainerEvent, fireContainerEvent, fireContainerEvent, fireElementAddedEvent, fireElementRemovedEvent, fireElementsAddedEvent, fireElementsRemovedEvent, fireEvent, newContainerEvent, newContainerEvent`

### Methods inherited from class org.eclipse.net4j.util.lifecycle.Lifecycle

`activate, checkActive, checkArg, checkArg, checkInactive, checkNull, checkState, checkState, deactivate, deferredActivate, doAfterActivate, doBeforeActivate, doBeforeDeactivate, dump, getLifecycleState, isActive, isDeferredActivation, toString`

### Methods inherited from class org.eclipse.net4j.util.event.Notifier

`addListener, addUniqueListener, fireEvent, fireEvent, fireThrowable, firstListenerAdded, getListeners, getNotificationService, hasListener, hasListeners, lastListenerRemoved, listenerAdded, listenerRemoved, removeListener`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.eclipse.net4j.util.container.IContainer

`getElements, isEmpty`

### Methods inherited from interface org.eclipse.net4j.util.event.INotifier

`addListener, getListeners, hasListeners, removeListener`

## Constructor Details

### AbstractCDOAdmin

protected AbstractCDOAdmin(long timeout)

## Method Details

### getTimeout

public final long getTimeout()

### isClosed

public boolean isClosed()

Specified by:
  `isClosed` in interface `org.eclipse.net4j.util.collection.Closeable`

### close

public void close()

Specified by:
  `close` in interface `org.eclipse.net4j.util.collection.Closeable`

### getRepositories

public CDOAdminRepository[] getRepositories()

Specified by:
  `getRepositories` in interface `CDOAdmin`

### getRepository

public CDOAdminRepository getRepository(String name)

Specified by:
  `getRepository` in interface `CDOAdmin`

### waitForRepository

public CDOAdminRepository waitForRepository(String name)

Specified by:
  `waitForRepository` in interface `CDOAdmin`

### createRepository

public CDOAdminRepository createRepository(String name, String type, Map<String,Object> properties)
Description copied from interface: `CDOAdmin`
Creates a new remote `repository` and returns its administrative interface.

On the server-side the creation is delegated to an instance of `org.eclipse.emf.cdo.server.spi.admin.CDOAdminHandler` that is registered with the server's `container` under the given `type` argument. The `name` and `properties` arguments are passed on to the registered handler.

Specified by:
  `createRepository` in interface `CDOAdmin`

### deleteRepository

public boolean deleteRepository(CDOAdminRepository repository, String type)

### sortElements

protected CDOAdminRepository[] sortElements(CDOAdminRepository[] array)

Overrides:
  `sortElements` in class `org.eclipse.net4j.util.container.ModifiableContainer<CDOAdminRepository>`

### validateElement

protected boolean validateElement(CDOAdminRepository repository)

Overrides:
  `validateElement` in class `org.eclipse.net4j.util.container.ModifiableContainer<CDOAdminRepository>`

### doCreateRepository

protected abstract boolean doCreateRepository(String name, String type, Map<String,Object> properties)

### doDeleteRepository

protected abstract boolean doDeleteRepository(String name, String type)