################################################################################
## Copyright (c) 2005, 2011 Sybase, Inc. and others.
## All rights reserved. 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/
##
## Contributors:
##    Sybase, Inc. - initial API and implementation
##    IBM Corporation -  fix for defect #223855
##	  Actuate Corporation - added the cipherProvider extension point [BZ 358686]
################################################################################ 
Plugin.Name = Data Tools Platform Connectivity Plug-in
Plugin.ProviderName = Eclipse Data Tools Platform

extension-point.name.cipherProvider = Connection Profiles Store Cipher Provider
extension-point.name.connectionProfile = Connection Profile Extension
extension-point.name.driverExtension = driverExtension
extension-point.name.ProfileManagerInitializationProvider =  ProfileManagerInitializationProvider
ConnectionProfileRepository.Category.Name = Connection Profile Repositories