diff options
Diffstat (limited to 'jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/java')
2 files changed, 93 insertions, 0 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/java/details/AttributeMappingUiProvider.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/java/details/AttributeMappingUiProvider.java new file mode 100644 index 0000000000..3259d36e17 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/java/details/AttributeMappingUiProvider.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2006, 2007 Oracle. 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: + * Oracle - initial API and implementation + ******************************************************************************/ +package org.eclipse.jpt.ui.java.details; + +import org.eclipse.jpt.core.context.AttributeMapping; +import org.eclipse.jpt.ui.JpaUiFactory; +import org.eclipse.jpt.ui.details.JpaComposite; +import org.eclipse.jpt.utility.internal.model.value.PropertyValueModel; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory; + +public interface AttributeMappingUiProvider<T extends AttributeMapping> +{ + /** + * A unique string that corresponds to the key of a MappingProvider in the core + * (IJavaAttributeMappingProvider and/or IXmlAttributeMappingProvider) + */ + String attributeMappingKey(); + + /** + * The IJpaComposite that correponds to this mapping type. This will be displayed + * by the PersistentAttributeDetailsPage when the mapping key matches the key given + * by this provider. The composites will be stored in a Map with the mapping key as the key. + * @param factory + * @param parent + * @param widgetFactory + * + * @return + */ + JpaComposite<T> buildAttributeMappingComposite( + JpaUiFactory factory, + PropertyValueModel<T> subjectHolder, + Composite parent, + TabbedPropertySheetWidgetFactory widgetFactory); + + /** + * A label to be displayed to the label as an option in the mapping type combo box + * @return + */ + String label(); +}
\ No newline at end of file diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/java/details/TypeMappingUiProvider.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/java/details/TypeMappingUiProvider.java new file mode 100644 index 0000000000..b2102ffef1 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/java/details/TypeMappingUiProvider.java @@ -0,0 +1,45 @@ +/******************************************************************************* + * Copyright (c) 2006, 2007 Oracle. 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: + * Oracle - initial API and implementation + ******************************************************************************/ +package org.eclipse.jpt.ui.java.details; + +import org.eclipse.jpt.core.context.TypeMapping; +import org.eclipse.jpt.ui.details.JpaComposite; +import org.eclipse.jpt.utility.internal.model.value.PropertyValueModel; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory; + +public interface TypeMappingUiProvider<T extends TypeMapping> +{ + /** + * A unique string that corresponds to the key of a MappingProvider in the core + */ + String mappingKey(); + + /** + * A label to be displayed to the label as an option in the mapping type combo box + * @return + */ + String label(); + + /** + * The IJpaComposite that correponds to this mapping type. This will be displayed + * by the PersistentTypeDetailsPage when the mapping key matches the key given + * by this provider. The composites will be stored in a Map with the mapping key as the key. + * + * @param parent + * @param widgetFactory + * @return + */ + JpaComposite<T> buildPersistentTypeMappingComposite( + PropertyValueModel<T> subjectHolder, + Composite parent, + TabbedPropertySheetWidgetFactory widgetFactory); + +} |