Package org.eclipse.emf.cdo.ui

# Class CDOTopicProvider.Topic

java.lang.Object
org.eclipse.net4j.util.event.Notifier
org.eclipse.emf.cdo.ui.CDOTopicProvider.Topic

All Implemented Interfaces:
  `IAdaptable`, `org.eclipse.net4j.util.event.INotifier`, `org.eclipse.net4j.util.event.INotifier.INotifier2`

Enclosing interface:
  CDOTopicProvider

public static final class CDOTopicProvider.Topic extends org.eclipse.net4j.util.event.Notifier implements IAdaptable
An `identifiable` topic in the scope of a `session`.

For displaying a topic carries an `image`, a `text` (label), and a `description`. Notifies `registered listeners` about changes in any of these attributes with `topic changed events`.

Author:
  Eike Stepper

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static final class`
`CDOTopicProvider.Topic.TopicChangedEvent`
An `event` fired from a `topic` when the `image`, the `text` (label), or the `description` attribute of the topic were changed.

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

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

## Constructor Summary

Constructors
Constructor
Description
`Topic(CDOSession session, String id, Image image, String text, String description)`

## Method Summary

Modifier and Type
Method
Description
`CDOTopicProvider.Topic`
`addAdapterProvider(Function<Class<?>,Object> newAdapterProvider)`
`boolean`
`equals(Object obj)`
`<T> T`
`getAdapter(Class<T> type)`
`String`
`getDescription()`
`String`
`getId()`
`Image`
`getImage()`
`Map<String,Object>`
`getProperties()`
Returns a modifiable map of properties.
`CDOSession`
`getSession()`
`String`
`getText()`
`int`
`hashCode()`
`String`
`toString()`

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

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

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

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

## Constructor Details

### Topic

public Topic(CDOSession session, String id, Image image, String text, String description)

## Method Details

### getSession

public CDOSession getSession()

### getId

public String getId()

### getImage

public Image getImage()

### getText

public String getText()

### getDescription

public String getDescription()

### getProperties

public Map<String,Object> getProperties()
Returns a modifiable map of properties.

Since:
  4.14

### getAdapter

public <T> T getAdapter(Class<T> type)

Specified by:
  `getAdapter` in interface `IAdaptable`

### addAdapterProvider

public CDOTopicProvider.Topic addAdapterProvider(Function<Class<?>,Object> newAdapterProvider)

Since:
  4.14

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`

### equals

public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

### toString

public String toString()

Overrides:
  `toString` in class `Object`