package org.fipro.eclipse.migration.e4.service.preferences; import java.util.ArrayList; import java.util.List; import org.eclipse.jface.preference.IPreferencePage; import org.eclipse.jface.resource.ImageDescriptor; public class PreferenceNodeContribution { private final List<ContributedPreferenceNode> nodes = new ArrayList<>(); public PreferenceNodeContribution(String id, String label, Class<? extends IPreferencePage> pageClass) { this(id, label, null, pageClass, null, null); } public PreferenceNodeContribution(String id, String label, Class<? extends IPreferencePage> pageClass, String path) { this(id, label, null, pageClass, path, null); } public PreferenceNodeContribution(String id, String label, Class<? extends IPreferencePage> pageClass, String path, String nodeQualifier) { this(id, label, null, pageClass, path, nodeQualifier); } public PreferenceNodeContribution( String id, String label, ImageDescriptor imageDescriptor, Class<? extends IPreferencePage> pageClass, String path, String nodeQualifier) { this.nodes.add(new ContributedPreferenceNode(id, label, imageDescriptor, pageClass, path, nodeQualifier)); } public List<ContributedPreferenceNode> getPreferenceNodes() { return this.nodes; } public void addPreferenceNode(String id, String label, Class<? extends IPreferencePage> pageClass) { addPreferenceNode(id, label, null, pageClass, null, null); } public void addPreferenceNode(String id, String label, Class<? extends IPreferencePage> pageClass, String path) { addPreferenceNode(id, label, null, pageClass, path, null); } public void addPreferenceNode(String id, String label, Class<? extends IPreferencePage> pageClass, String path, String nodeQualifier) { addPreferenceNode(id, label, null, pageClass, path, nodeQualifier); } public void addPreferenceNode( String id, String label, ImageDescriptor imageDescriptor, Class<? extends IPreferencePage> pageClass, String path, String nodeQualifier) { this.nodes.add(new ContributedPreferenceNode(id, label, imageDescriptor, pageClass, path, nodeQualifier)); } }