Package org.eclipse.ecf.provider.generic

# Class SOConfig

java.lang.Object
org.eclipse.ecf.provider.generic.SOConfig

All Implemented Interfaces:
  `ISharedObjectConfig`

public class SOConfig extends Object implements ISharedObjectConfig

## Field Summary

Fields
Modifier and Type
Field
Description
`protected SOContainer`
`container`
`protected SOContext`
`context`
`protected ID`
`homeContainerID`
`protected boolean`
`isActive`
`protected Map`
`properties`
`protected ID`
`sharedObjectID`

## Constructor Summary

Constructors
Constructor
Description
`SOConfig(ID sharedObjectID, ID homeContainerID, SOContainer cont, Map dict)`

## Method Summary

Modifier and Type
Method
Description
`ISharedObjectContext`
`getContext()`
Get the ISharedObjectContext instance for this ISharedObject.
`ID`
`getHomeContainerID()`
Get the ID of the container that is the home of the primary copy of the ISharedObject instance.
`Map`
`getProperties()`
Get properties associated with with this ISharedObject
`ID`
`getSharedObjectID()`
Get the ID associated with this ISharedObject by its container.
`protected void`
`makeActive(IQueueEnqueue queue)`
`protected void`
`makeInactive()`

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

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

## Field Details

### container

protected SOContainer container

### sharedObjectID

protected ID sharedObjectID

### homeContainerID

protected ID homeContainerID

### isActive

protected boolean isActive

### properties

protected Map properties

### context

protected SOContext context

## Constructor Details

### SOConfig

public SOConfig(ID sharedObjectID, ID homeContainerID, SOContainer cont, Map dict)

## Method Details

### makeActive

protected void makeActive(IQueueEnqueue queue)

### makeInactive

protected void makeInactive()

### getSharedObjectID

public ID getSharedObjectID()
Description copied from interface: `ISharedObjectConfig`
Get the ID associated with this ISharedObject by its container. Containers must provide an implementation of this configuration that provides a non-null ID instance in response to this method call.

Specified by:
  `getSharedObjectID` in interface `ISharedObjectConfig`
Returns:
  ID that ISharedObject can use for imlementing its own ISharedObject.getID(). Will not be null.

### getHomeContainerID

public ID getHomeContainerID()
Description copied from interface: `ISharedObjectConfig`
Get the ID of the container that is the home of the primary copy of the ISharedObject instance.

Specified by:
  `getHomeContainerID` in interface `ISharedObjectConfig`
Returns:
  the ID of the container that is the home of the primary copy of the ISharedObject instance. Will not be null.

### getContext

public ISharedObjectContext getContext()
Description copied from interface: `ISharedObjectConfig`
Get the ISharedObjectContext instance for this ISharedObject. The ISharedObjectContext provides access to container-provided services, including messaging to remote containers and to remote replicas of the ISharedObject, as well as access to OSGI-platform services.

Specified by:
  `getContext` in interface `ISharedObjectConfig`
Returns:
  ISharedObjectContext for the ISharedObject to use to access container and associated services. Will return null if context is no longer valid.

### getProperties

public Map getProperties()
Description copied from interface: `ISharedObjectConfig`
Get properties associated with with this ISharedObject

Specified by:
  `getProperties` in interface `ISharedObjectConfig`
Returns:
  Map with properties associated with this ISharedObject instance. Will not be null.