Package org.eclipse.net4j.util.concurrent

# Class Worker

java.lang.Object
org.eclipse.net4j.util.event.Notifier
org.eclipse.net4j.util.lifecycle.Lifecycle
org.eclipse.net4j.util.concurrent.Worker

All Implemented Interfaces:
  `INotifier`, `INotifier.INotifier2`, `IDeactivateable`, `ILifecycle`, `ILifecycle.DeferrableActivation`

Direct Known Subclasses:
  `Cache`, `CacheMonitor`, `QueueWorker`, `ReferenceQueueWorker`, `RollingLog`

public abstract class Worker extends Lifecycle

Since:
  2.0
Author:
  Eike Stepper

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static final class`
`Worker.Terminate`
`class`
`Worker.WorkContext`

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

`Notifier.Cancelation`

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

`ILifecycle.DeferrableActivation`

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

`INotifier.INotifier2`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final IErrorHandler`
`DEFAULT_ERROR_HANDLER`
`static final int`
`DEFAULT_TIMEOUT`

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

`USE_LABEL`

## Constructor Summary

Constructors
Constructor
Description
`Worker()`

## Method Summary

Modifier and Type
Method
Description
`protected void`
`doActivate()`
`protected void`
`doDeactivate()`
`long`
`getActivationTimeout()`
`long`
`getDeactivationTimeout()`
`static IErrorHandler`
`getGlobalErrorHandler()`
`protected String`
`getThreadName()`
`org.eclipse.net4j.util.concurrent.Worker.WorkerThread`
`getWorkerThread()`
`protected void`
`handleError(Exception ex)`
`boolean`
`isDaemon()`
`void`
`setActivationTimeout(long activationTimeout)`
`void`
`setDaemon(boolean daemon)`
`void`
`setDeactivationTimeout(long deactivationTimeout)`
`static IErrorHandler`
`setGlobalErrorHandler(IErrorHandler globalErrorHandler)`
`protected abstract void`
`work(Worker.WorkContext context)`

### 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, 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.event.INotifier

`addListener, getListeners, hasListeners, removeListener`

## Field Details

### DEFAULT_TIMEOUT

public static final int DEFAULT_TIMEOUT

See Also:
  - Constant Field Values

### DEFAULT_ERROR_HANDLER

public static final IErrorHandler DEFAULT_ERROR_HANDLER

Since:
  3.0

## Constructor Details

### Worker

public Worker()

## Method Details

### isDaemon

public boolean isDaemon()

### setDaemon

public void setDaemon(boolean daemon)

### getActivationTimeout

public long getActivationTimeout()

### setActivationTimeout

public void setActivationTimeout(long activationTimeout)

### getDeactivationTimeout

public long getDeactivationTimeout()

### setDeactivationTimeout

public void setDeactivationTimeout(long deactivationTimeout)

### getWorkerThread

public org.eclipse.net4j.util.concurrent.Worker.WorkerThread getWorkerThread()

Since:
  3.6

### doActivate

protected void doActivate() throws Exception

Overrides:
  `doActivate` in class `Lifecycle`
Throws:
  `Exception`

### doDeactivate

protected void doDeactivate() throws Exception

Overrides:
  `doDeactivate` in class `Lifecycle`
Throws:
  `Exception`

### getThreadName

protected String getThreadName()

### handleError

protected void handleError(Exception ex)

Since:
  3.1

### work

protected abstract void work(Worker.WorkContext context) throws Exception

Throws:
  `Exception`

### getGlobalErrorHandler

public static IErrorHandler getGlobalErrorHandler()

Since:
  3.0

### setGlobalErrorHandler

public static IErrorHandler setGlobalErrorHandler(IErrorHandler globalErrorHandler)

Since:
  3.0