All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.eclipse.pde.ui.templates.PluginReference Maven / Gradle / Ivy

The newest version!
/*******************************************************************************
 * Copyright (c) 2007, 2016 IBM Corporation and others.
 *
 * This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License 2.0
 * which accompanies this distribution, and is available at
 * https://www.eclipse.org/legal/epl-2.0/
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/

package org.eclipse.pde.ui.templates;

import org.eclipse.core.runtime.CoreException;
import org.eclipse.pde.core.plugin.IMatchRules;
import org.eclipse.pde.core.plugin.IPluginReference;

/**
 * Implementation of the IPluginReference
 * 

* This class may be instantiated. This class is not intended to be sub-classed by clients. *

* @see IPluginReference * @since 3.4 * * @noextend This class is not intended to be sub-classed by clients. */ public class PluginReference implements IPluginReference { private String id; private String version; private int match = IMatchRules.NONE; /** * * Constructs a plug-in reference to be used in the PDE template framework * * @see #PluginReference(String id, String version, int match) * * @param id * the id of the plug-in * @since 3.9 */ public PluginReference(String id) { this(id, null, 0); } /** * * Constructs a plug-in reference to be used in the PDE template framework * * @param id * the id of the plug-in * @param version * the version of the plug-in * @param match * the match rule for the plug-in {@link IMatchRules} */ public PluginReference(String id, String version, int match) { this.id = id; this.version = version; this.match = match; } @Override public boolean equals(Object object) { if (object instanceof IPluginReference source) { if (id == null) return false; return id.equals(source.getId()) && ((version == null && source.getVersion() == null) || version.equals(source.getVersion())); } return false; } @Override public int hashCode() { if (id != null) { return id.hashCode() + (version == null ? 0 : version.hashCode()); } return super.hashCode(); } @Override public int getMatch() { return match; } @Override public String getVersion() { return version; } @Override public void setMatch(int match) throws CoreException { this.match = match; } @Override public void setVersion(String version) throws CoreException { this.version = version; } @Override public String getId() { return id; } @Override public void setId(String id) throws CoreException { this.id = id; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy