Package org.eclipse.launchbar.core.internal

# Class ExecutableExtension<T>

java.lang.Object
org.eclipse.launchbar.core.internal.ExecutableExtension<T>

Type Parameters:
  `T` - the type of the object created

public class ExecutableExtension<T> extends Object
A wrapper class that delays instantiation of classes until they're needed to prevent early plug-in loading.

## Constructor Summary

Constructors
Constructor
Description
`ExecutableExtension(org.eclipse.core.runtime.IConfigurationElement element, String propertyName)`
`ExecutableExtension(T object)`

## Method Summary

Modifier and Type
Method
Description
`T`
`create()`
Creates a new object.
`T`
`get()`
Get the object instantiating it if necessary.

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

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

## Constructor Details

### ExecutableExtension

public ExecutableExtension(org.eclipse.core.runtime.IConfigurationElement element, String propertyName)

### ExecutableExtension

public ExecutableExtension(T object)

## Method Details

### get

public T get() throws org.eclipse.core.runtime.CoreException
Get the object instantiating it if necessary.

Returns:
  object
Throws:
  `org.eclipse.core.runtime.CoreException`

### create

public T create() throws org.eclipse.core.runtime.CoreException
Creates a new object. Can't be done if you've done a get already.

Returns:
  a new object from the extension or null if get was called earlier
Throws:
  `org.eclipse.core.runtime.CoreException`