/******************************************************************************* * Copyright (c) 2013, 2015 Red Hat, Inc. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Red Hat Inc. - initial API and implementation and/or initial documentation *******************************************************************************/ package org.eclipse.thym.core.plugin.registry; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; public class CordovaRegistryPlugin extends CordovaRegistryPluginInfo { private List<RegistryPluginVersion> versions; private List<String> keywords; private Map<String, String> maintainers; private String latestVersion; private String license; public class RegistryPluginVersion{ private String versionNumber; private String tarball; private String shasum; public String getVersionNumber() { return versionNumber; } public void setVersionNumber(String versionNumber) { this.versionNumber = versionNumber; } public String getName(){ return CordovaRegistryPlugin.this.getName(); } public String getTarball() { return tarball; } public void setTarball(String tarball) { this.tarball = tarball; } public String getShasum() { return shasum; } public void setShasum(String shasum) { this.shasum = shasum; } } public List<RegistryPluginVersion> getVersions() { if(versions == null ){ return Collections.emptyList(); } return versions; } public void addVersion(RegistryPluginVersion version ) { if(versions == null ){ versions = new ArrayList<RegistryPluginVersion>(); } versions.add(version); } /** * Returns the {@link RegistryPluginVersion} object for the given * version. If the given version does not exist it returns null * @param version * @return version or null */ public RegistryPluginVersion getVersion(String version){ if(versions == null ){ return null; } for (RegistryPluginVersion ver : versions) { if(ver.getVersionNumber().equals(version)){ return ver; } } return null; } public List<String> getKeywords() { return keywords; } public void addKeyword(String keyword) { if(keywords == null ){ keywords = new ArrayList<String>(); } keywords.add(keyword); } public void addMaintainer(String email, String name) { if(maintainers == null ){ maintainers = new HashMap<String, String>(); } maintainers.put(email, name); } public Map<String, String> getMaintainers() { return maintainers; } public String getLatestVersion() { return latestVersion; } public void setLatestVersion(String latestVersion) { this.latestVersion = latestVersion; } public String getLicense() { return license; } public void setLicense(String license) { this.license = license; } }