Eclipse Platform
Release 3.1

org.eclipse.core.runtime.preferences
Interface IPreferenceFilter


public interface IPreferenceFilter

Preference filters are used to describe the relationship between the preference tree and a data set when importing/exporting preferences.

For instance, a client is able to create a preference filter describing which preference nodes/keys should be used when exporting the "Key Bindings" preferences. When the export happens, the tree is trimmed and only the applicable preferences will be exported.

Clients may implement this interface.

Since:
3.1

Method Summary
 Map getMapping(String scope)
          Return a mapping which defines the nodes and keys that this filter applies to.
 String[] getScopes()
          Return an array of scopes that this preference filter is applicable for.
 

Method Detail

getScopes

public String[] getScopes()
Return an array of scopes that this preference filter is applicable for. The list of scopes must not be null.

For example: new String[] {InstanceScope.SCOPE, ConfigurationScope.SCOPE};

Returns:
the array of scopes

getMapping

public Map getMapping(String scope)
Return a mapping which defines the nodes and keys that this filter applies to.

If the map is null then this filter is applicable for all nodes within the scope. The map can also be null if the given scope is not known to this filter.

The keys in the table are Strings and describe the node path. The values are an optional array of PreferenceFilterEntry objects describing the list of applicable keys in that node. If the value is null then the whole node is considered applicable.

key: String (node)
value: PreferenceFilterEntry[] or null (preference keys)

For example:

 "org.eclipse.core.resources" -> null
 "org.eclipse.ui" -> new PreferenceFilterEntry[] {
 		new PreferenceFilterEntry("DEFAULT_PERSPECTIVE_LOCATION"), 
 		new PreferenceFilterEntry("SHOW_INTRO_ON_STARTUP")}
 

Returns:
the mapping table
See Also:
PreferenceFilterEntry

Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2005. All rights reserved.