###############################################################################
# Copyright (c) 2006, 2007 IBM Corporation 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:
#     IBM Corporation - initial API and implementation
###############################################################################
pluginName=Eclipse Data Tools Platform Oracle UI Plug-in
providerName=Eclipse Data Tools Platform

profile.oracle.wizard.title = Oracle
profile.oracle.wizard.description = Create an Oracle connection profile.
profile.oracle.properties = Driver Properties
