/*******************************************************************************
 * Copyright (c) 2009 Tasktop Technologies and others.
 *  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:
 *      Tasktop Technologies - initial API and implementation
 *******************************************************************************/

package org.eclipse.mylyn.internal.oslc.core;

/**
 * @see http://open-services.net/bin/view/Main/OslcServiceProviderCatalogV1
 * 
 * @author Robert Elves
 */
public class OslcServiceProviderCatalog extends OslcServiceProvider {

	public OslcServiceProviderCatalog(String name, String url) {
		super(name, url);
	}

}
