Package org.eclipse.cdt.core.language.settings.providers

## Class LanguageSettingsGenericProvider

- java.lang.Object
- - org.eclipse.cdt.core.AbstractExecutableExtensionBase
  - - org.eclipse.cdt.core.language.settings.providers.LanguageSettingsBaseProvider
    - - org.eclipse.cdt.core.language.settings.providers.LanguageSettingsSerializableProvider
      - - org.eclipse.cdt.core.language.settings.providers.LanguageSettingsGenericProvider

All Implemented Interfaces:
  `Cloneable`, `ILanguageSettingsBroadcastingProvider`, `ILanguageSettingsEditableProvider`, `ILanguageSettingsProvider`

    public final class LanguageSettingsGenericProvider
    extends LanguageSettingsSerializableProvider
    implements ILanguageSettingsEditableProvider

Generic implementation of language settings provider which can be edited in UI with entries persisted between eclipse sessions. The instances of this class can be used in plugin.xml to create a new provider but this class is not intended to be extended. For more details how to create a language settings provider see the description of `ILanguageSettingsProvider`.

Since:
  5.4

### Field Summary

### Fields inherited from class org.eclipse.cdt.core.language.settings.providers.LanguageSettingsSerializableProvider

`ATTR_CLASS, ATTR_ID, ATTR_NAME, ELEM_LANGUAGE_SCOPE, ELEM_PROVIDER`

### Fields inherited from class org.eclipse.cdt.core.language.settings.providers.LanguageSettingsBaseProvider

`languageScope, properties`

### Constructor Summary

Constructors
`LanguageSettingsGenericProvider()`

### Method Summary

All Methods Instance Methods Concrete Methods
`LanguageSettingsGenericProvider` `clone()`
`LanguageSettingsGenericProvider` `cloneShallow()` Shallow clone of the provider.

### Methods inherited from class org.eclipse.cdt.core.language.settings.providers.LanguageSettingsSerializableProvider

`clear, configureProvider, copyStorage, equals, getSettingEntries, hashCode, isEmpty, load, loadAttributes, loadEntries, serialize, serializeAttributes, serializeEntries, serializeLanguageSettings, serializeLanguageSettingsInBackground, setLanguageScope, setProperty, setPropertyBool, setSettingEntries`

### Methods inherited from class org.eclipse.cdt.core.language.settings.providers.LanguageSettingsBaseProvider

`getLanguageScope, getProperty, getPropertyBool`

### Methods inherited from class org.eclipse.cdt.core.AbstractExecutableExtensionBase

`getId, getName, setId, setName, toString`

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

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

### Methods inherited from interface org.eclipse.cdt.core.language.settings.providers.ILanguageSettingsBroadcastingProvider

`copyStorage`

### Methods inherited from interface org.eclipse.cdt.core.language.settings.providers.ILanguageSettingsEditableProvider

`getId, getName, getSettingEntries, setSettingEntries`

### Constructor Detail

#### LanguageSettingsGenericProvider

    public LanguageSettingsGenericProvider()

### Method Detail

#### clone

    public LanguageSettingsGenericProvider clone()
                                          throws CloneNotSupportedException

Specified by:
  `clone` in interface `ILanguageSettingsEditableProvider`
Overrides:
  `clone` in class `LanguageSettingsSerializableProvider`
Throws:
  `CloneNotSupportedException`

#### cloneShallow

    public LanguageSettingsGenericProvider cloneShallow()
                                                 throws CloneNotSupportedException

Description copied from class: `LanguageSettingsSerializableProvider`
Shallow clone of the provider. "Shallow" is defined here as the exact copy except that the copy will have zero language settings entries.

Specified by:
  `cloneShallow` in interface `ILanguageSettingsEditableProvider`
Overrides:
  `cloneShallow` in class `LanguageSettingsSerializableProvider`
Returns:
  shallow copy of the provider.
Throws:
  `CloneNotSupportedException` - in case `LanguageSettingsSerializableProvider.clone()` throws the exception.