Author: dgeraskov
Date: 2009-07-30 09:21:46 -0400 (Thu, 30 Jul 2009)
New Revision: 16897
Added:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateAbstractInheritanceComposite.java
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateDiscriminatorColumnComposite.java
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateIdMappingComposite.java
Removed:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateAbstractInheritanceComposite.java
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateDiscriminatorColumnComposite.java
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateIdMappingComposite.java
Modified:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateJavaInheritanceComposite.java
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/platform/HibernateJpaUiFactory.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-4665
Classes moved to right packages
Deleted:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateAbstractInheritanceComposite.java
===================================================================
---
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateAbstractInheritanceComposite.java 2009-07-30
13:09:13 UTC (rev 16896)
+++
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateAbstractInheritanceComposite.java 2009-07-30
13:21:46 UTC (rev 16897)
@@ -1,296 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2009 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
- * Code copied from
org.eclipse.jpt.ui.internal.mappings.details.AbstractInheritanceComposite
- ******************************************************************************/
-package org.jboss.tools.hibernate.jpt.ui.internal.java.details;
-
-import java.util.Collection;
-
-import org.eclipse.jpt.core.context.Entity;
-import org.eclipse.jpt.core.context.InheritanceType;
-import org.eclipse.jpt.ui.internal.JpaHelpContextIds;
-import org.eclipse.jpt.ui.internal.mappings.JptUiMappingsMessages;
-import org.eclipse.jpt.ui.internal.mappings.db.ColumnCombo;
-import org.eclipse.jpt.ui.internal.mappings.details.AbstractEntityComposite;
-import org.eclipse.jpt.ui.internal.mappings.details.AbstractInheritanceComposite;
-import org.eclipse.jpt.ui.internal.util.ControlEnabler;
-import org.eclipse.jpt.ui.internal.widgets.EnumFormComboViewer;
-import org.eclipse.jpt.ui.internal.widgets.FormPane;
-import org.eclipse.jpt.utility.internal.StringConverter;
-import org.eclipse.jpt.utility.internal.model.value.PropertyAspectAdapter;
-import org.eclipse.jpt.utility.internal.model.value.PropertyListValueModelAdapter;
-import org.eclipse.jpt.utility.model.value.ListValueModel;
-import org.eclipse.jpt.utility.model.value.WritablePropertyValueModel;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.jboss.tools.hibernate.jpt.core.internal.context.HibernateEntity;
-
-/**
- * Here the layout of this pane:
- * <pre>
- * -----------------------------------------------------------------------------
- * | ---------------------------------------------------- |
- * | Strategy: | EnumComboViewer |v| |
- * | ---------------------------------------------------- |
- * | ---------------------------------------------------- |
- * | Value: | I |v| |
- * | ---------------------------------------------------- |
- * | |
- * | > Discriminator Column |
- * | |
- * | ---------------------------------------------------- |
- * | Name: | ColumnCombo |v| |
- * | ---------------------------------------------------- |
- * | ---------------------------------------------------- |
- * | Formula: | Text |v| |
- * | ---------------------------------------------------- |
- * | ---------------------------------------------------- |
- * | Type: | EnumComboViewer |v| |
- * | ---------------------------------------------------- |
- * | ---------------------------------------------------- |
- * | Column Definition: | I | |
- * | ---------------------------------------------------- |
- * | ------------- |
- * | Length: | I |I| |
- * | ------------- |
- * | ------------------------------------------------------------------------- |
- * | | | |
- * | | PrimaryKeyJoinColumnsComposite | |
- * | | | |
- * | ------------------------------------------------------------------------- |
- *
-----------------------------------------------------------------------------</pre>
- *
- * @see Entity
- * @see AbstractEntityComposite - The parent container
- * @see ColumnCombo
- * @see EnumComboViewer
- * @see PrimaryKeyJoinColumnsComposite
- *
- * @version 2.0
- * @since 2.0
- */
-@SuppressWarnings("nls")
-public abstract class HibernateAbstractInheritanceComposite<T extends
HibernateEntity> extends FormPane<T> {
-
- /**
- * A key used to represent the default value, this is required to convert
- * the selected item from a combo to <code>null</code>. This key is most
- * likely never typed the user and it will help to convert the value to
- * <code>null</code> when it's time to set the new selected value into
the
- * model.
- */
- protected static String DEFAULT_KEY = "?!#!?#?#?default?#?!#?!#?";
-
- protected static String NONE_KEY = "?!#!?#?#?none?#?!#?!#?";
-
- /**
- * Creates a new <code>InheritanceComposite</code>.
- *
- * @param parentPane The parent container of this one
- * @param parent The parent container
- */
- public HibernateAbstractInheritanceComposite(FormPane<? extends T> parentPane,
- Composite parent) {
-
- super(parentPane, parent, false);
- }
-
- @Override
- protected void initializeLayout(Composite container) {
-
- int groupBoxMargin = getGroupBoxMargin();
-
- Composite subPane = addSubPane(
- container, 0, groupBoxMargin, 0, groupBoxMargin
- );
-
- // Strategy widgets
- addLabeledComposite(
- subPane,
- JptUiMappingsMessages.InheritanceComposite_strategy,
- addStrategyCombo(subPane),
- JpaHelpContextIds.ENTITY_INHERITANCE_STRATEGY
- );
-
- // Discrinator Value widgets
- CCombo discriminatorValueCombo = addEditableCCombo(
- subPane,
- buildDiscriminatorValueListHolder(),
- buildDiscriminatorValueHolder(),
- buildDiscriminatorValueConverter()
- );
- Label discriminatorValueLabel = addLabel(
- subPane,
- JptUiMappingsMessages.InheritanceComposite_discriminatorValue
- );
- addLabeledComposite(
- subPane,
- discriminatorValueLabel,
- discriminatorValueCombo.getParent(),
- null,
- JpaHelpContextIds.ENTITY_INHERITANCE_DISCRIMINATOR_VALUE
- );
-
- new ControlEnabler(buildDiscriminatorValueEnabledHolder(), discriminatorValueCombo,
discriminatorValueLabel);
-
- new HibernateDiscriminatorColumnComposite<HibernateEntity>(this, container);
-
- // Primary Key Join Columns widgets
- addPrimaryKeyJoinColumnsComposite(addSubPane(container, 5));
- }
-
- protected WritablePropertyValueModel<Boolean>
buildDiscriminatorValueEnabledHolder() {
- return new PropertyAspectAdapter<Entity, Boolean>(getSubjectHolder(),
Entity.SPECIFIED_DISCRIMINATOR_VALUE_IS_ALLOWED_PROPERTY) {
- @Override
- protected Boolean buildValue_() {
- return Boolean.valueOf(this.subject.specifiedDiscriminatorValueIsAllowed());
- }
- };
- }
-
- private ListValueModel<String> buildDefaultDiscriminatorListValueHolder() {
- return new PropertyListValueModelAdapter<String>(
- buildDefaultDiscriminatorValueHolder()
- );
- }
-
- private WritablePropertyValueModel<String> buildDefaultDiscriminatorValueHolder()
{
- return new PropertyAspectAdapter<Entity, String>(getSubjectHolder(),
Entity.DEFAULT_DISCRIMINATOR_VALUE_PROPERTY,
Entity.DISCRIMINATOR_VALUE_IS_UNDEFINED_PROPERTY) {
- @Override
- protected String buildValue_() {
- String value = this.subject.getDefaultDiscriminatorValue();
- if (value == null && this.subject.discriminatorValueIsUndefined()) {
- return NONE_KEY;
- }
-
- if (value == null) {
- value = DEFAULT_KEY;
- }
- else {
- value = DEFAULT_KEY + value;
- }
-
- return value;
- }
- };
- }
-
- private StringConverter<String> buildDiscriminatorValueConverter() {
- return new StringConverter<String>() {
- public String convertToString(String value) {
-
- if (getSubject() == null) {
- return null;
- }
-
- if (value == null) {
- value = getSubject().getDefaultDiscriminatorValue();
- if (value == null && getSubject().discriminatorValueIsUndefined()) {
- value = NONE_KEY;
- }
- else {
- value = (value != null) ?
- DEFAULT_KEY + value
- :
- DEFAULT_KEY;
- }
- }
- if (value.startsWith(DEFAULT_KEY)) {
- String defaultName = value.substring(DEFAULT_KEY.length());
-
- if (defaultName.length() > 0) {
- value = NLS.bind(
- JptUiMappingsMessages.DefaultWithOneParam,
- defaultName
- );
- }
- else {
- value = JptUiMappingsMessages.ProviderDefault;
- }
- }
- if (value.startsWith(NONE_KEY)) {
- value = JptUiMappingsMessages.NoneSelected;
- }
- return value;
- }
- };
- }
-
- private WritablePropertyValueModel<String> buildDiscriminatorValueHolder() {
- return new PropertyAspectAdapter<Entity, String>(getSubjectHolder(),
Entity.SPECIFIED_DISCRIMINATOR_VALUE_PROPERTY) {
- @Override
- protected String buildValue_() {
- return this.subject.getSpecifiedDiscriminatorValue();
- }
-
- @Override
- protected void setValue_(String value) {
-
- // Convert the default value or an empty string to null
- if ((value != null) &&
- ((value.length() == 0) || value.startsWith(DEFAULT_KEY) ||
value.startsWith(NONE_KEY))) {
-
- value = null;
- }
-
- this.subject.setSpecifiedDiscriminatorValue(value);
- }
- };
- }
-
- private ListValueModel<String> buildDiscriminatorValueListHolder() {
- return buildDefaultDiscriminatorListValueHolder();
- }
-
- private EnumFormComboViewer<Entity, InheritanceType> addStrategyCombo(Composite
container) {
-
- return new EnumFormComboViewer<Entity, InheritanceType>(this, container) {
-
- @Override
- protected void addPropertyNames(Collection<String> propertyNames) {
- super.addPropertyNames(propertyNames);
- propertyNames.add(Entity.DEFAULT_INHERITANCE_STRATEGY_PROPERTY);
- propertyNames.add(Entity.SPECIFIED_INHERITANCE_STRATEGY_PROPERTY);
- }
-
- @Override
- protected InheritanceType[] getChoices() {
- return InheritanceType.values();
- }
-
- @Override
- protected InheritanceType getDefaultValue() {
- return getSubject().getDefaultInheritanceStrategy();
- }
-
- @Override
- protected String displayString(InheritanceType value) {
- return buildDisplayString(
- JptUiMappingsMessages.class,
- AbstractInheritanceComposite.class,
- value
- );
- }
-
- @Override
- protected InheritanceType getValue() {
- return getSubject().getSpecifiedInheritanceStrategy();
- }
-
- @Override
- protected void setValue(InheritanceType value) {
- getSubject().setSpecifiedInheritanceStrategy(value);
- }
- };
- }
-
- protected abstract void addPrimaryKeyJoinColumnsComposite(Composite container);
-}
\ No newline at end of file
Deleted:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateDiscriminatorColumnComposite.java
===================================================================
---
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateDiscriminatorColumnComposite.java 2009-07-30
13:09:13 UTC (rev 16896)
+++
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateDiscriminatorColumnComposite.java 2009-07-30
13:21:46 UTC (rev 16897)
@@ -1,433 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007-2009 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is 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
- *
- * Contributor:
- * Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-package org.jboss.tools.hibernate.jpt.ui.internal.java.details;
-
-import java.util.Collection;
-
-import org.eclipse.jpt.core.context.DiscriminatorColumn;
-import org.eclipse.jpt.core.context.DiscriminatorType;
-import org.eclipse.jpt.core.context.Entity;
-import org.eclipse.jpt.core.context.NamedColumn;
-import org.eclipse.jpt.db.Table;
-import org.eclipse.jpt.ui.internal.JpaHelpContextIds;
-import org.eclipse.jpt.ui.internal.mappings.JptUiMappingsMessages;
-import org.eclipse.jpt.ui.internal.mappings.db.ColumnCombo;
-import org.eclipse.jpt.ui.internal.mappings.details.AbstractEntityComposite;
-import org.eclipse.jpt.ui.internal.mappings.details.DiscriminatorColumnComposite;
-import org.eclipse.jpt.ui.internal.util.LabeledControlUpdater;
-import org.eclipse.jpt.ui.internal.util.LabeledLabel;
-import org.eclipse.jpt.ui.internal.util.PaneEnabler;
-import org.eclipse.jpt.ui.internal.widgets.EnumFormComboViewer;
-import org.eclipse.jpt.ui.internal.widgets.FormPane;
-import org.eclipse.jpt.utility.internal.model.value.PropertyAspectAdapter;
-import org.eclipse.jpt.utility.internal.model.value.SimplePropertyValueModel;
-import org.eclipse.jpt.utility.internal.model.value.TransformationPropertyValueModel;
-import org.eclipse.jpt.utility.model.value.PropertyValueModel;
-import org.eclipse.jpt.utility.model.value.WritablePropertyValueModel;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Spinner;
-import org.jboss.tools.hibernate.jpt.core.internal.context.DiscriminatorFormula;
-import org.jboss.tools.hibernate.jpt.core.internal.context.HibernateEntity;
-import
org.jboss.tools.hibernate.jpt.ui.internal.mapping.details.HibernateUIMappingMessages;
-
-/**
- * Here the layout of this pane:
- * <pre>
- * -----------------------------------------------------------------------------
- * | > Discriminator Column |
- * | |
- * | ---------------------------------------------------- |
- * | Name: | ColumnCombo |v| |
- * | ---------------------------------------------------- |
- * | ---------------------------------------------------- |
- * | Formula: | Text |v| |
- * | ---------------------------------------------------- |
- * | ---------------------------------------------------- |
- * | Type: | EnumComboViewer |v| |
- * | ---------------------------------------------------- |
- * | > Details
- * | ---------------------------------------------------- |
- * | Column Definition: | I | |
- * | ---------------------------------------------------- |
- * | ------------- |
- * | Length: | I |I| |
- * | ------------- |
- *
-----------------------------------------------------------------------------</pre>
- *
- * @see Entity
- * @see AbstractEntityComposite - The parent container
- * @see ColumnCombo
- * @see EnumComboViewer
- * @see PrimaryKeyJoinColumnsComposite
- *
- * @version 2.0
- * @since 2.0
- */
-public class HibernateDiscriminatorColumnComposite <T extends HibernateEntity>
extends FormPane<T> {
-
- /**
- * Creates a new <code>InheritanceComposite</code>.
- *
- * @param parentPane The parent container of this one
- * @param parent The parent container
- */
- public HibernateDiscriminatorColumnComposite(FormPane<? extends T> parentPane,
- Composite parent) {
-
- super(parentPane, parent, false);
- }
-
- @Override
- protected void initializeLayout(Composite container) {
- // Discriminator Column sub-pane
- Composite discriminatorColumnContainer = addTitledGroup(
- addSubPane(container, 10),
- JptUiMappingsMessages.InheritanceComposite_discriminatorColumnGroupBox
- );
-
- PropertyValueModel<DiscriminatorColumn> discriminatorColumnHolder =
- buildDiscriminatorColumnHolder();
-
- // Name widgets
- addLabeledComposite(
- discriminatorColumnContainer,
- JptUiMappingsMessages.DiscriminatorColumnComposite_name,
- addDiscriminatorColumnCombo(container, discriminatorColumnHolder),
- JpaHelpContextIds.ENTITY_INHERITANCE_DISCRIMINATOR_COLUMN
- );
-
- // Formula widgets
- addLabeledText(
- discriminatorColumnContainer,
- HibernateUIMappingMessages.HibernateDiscriminatorColumnComposite_formula,
- buildDiscriminatorFormulaHolder(),
- null//TODO help
- );
-
- // Discriminator Type widgets
- addLabeledComposite(
- discriminatorColumnContainer,
- JptUiMappingsMessages.DiscriminatorColumnComposite_discriminatorType,
- addDiscriminatorTypeCombo(container, discriminatorColumnHolder),
- JpaHelpContextIds.ENTITY_INHERITANCE_DISCRIMINATOR_TYPE
- );
-
- container = addCollapsableSubSection(
- discriminatorColumnContainer,
- JptUiMappingsMessages.InheritanceComposite_detailsGroupBox,
- new SimplePropertyValueModel<Boolean>(Boolean.FALSE)
- );
-
- new DetailsComposite(this, discriminatorColumnHolder, addSubPane(container, 0, 16));
-
- new PaneEnabler(buildDiscriminatorColumnEnabledHolder(), this);
- }
-
-
- private ColumnCombo<DiscriminatorColumn> addDiscriminatorColumnCombo(
- Composite container,
- PropertyValueModel<DiscriminatorColumn> discriminatorColumnHolder) {
-
- return new ColumnCombo<DiscriminatorColumn>(
- this,
- discriminatorColumnHolder,
- container)
- {
-
- @Override
- protected void addPropertyNames(Collection<String> propertyNames) {
- super.addPropertyNames(propertyNames);
- propertyNames.add(NamedColumn.SPECIFIED_NAME_PROPERTY);
- propertyNames.add(NamedColumn.DEFAULT_NAME_PROPERTY);
- }
-
- @Override
- protected String getDefaultValue() {
- return getSubject().getDefaultName();
- }
-
- @Override
- protected void setValue(String value) {
- getSubject().setSpecifiedName(value);
- }
-
- @Override
- protected Table getDbTable_() {
- return getSubject().getDbTable();
- }
-
- @Override
- protected String getValue() {
- return getSubject().getSpecifiedName();
- }
-
- @Override
- protected String buildNullDefaultValueEntry() {
- return JptUiMappingsMessages.NoneSelected;
- }
- };
- }
-
-
- private PropertyValueModel<DiscriminatorColumn> buildDiscriminatorColumnHolder()
{
- return new PropertyAspectAdapter<Entity, DiscriminatorColumn>(getSubjectHolder())
{
- @Override
- protected DiscriminatorColumn buildValue_() {
- return this.subject.getDiscriminatorColumn();
- }
- };
- }
-
-
- private WritablePropertyValueModel<String> buildDiscriminatorFormulaHolder() {
- return new PropertyAspectAdapter<HibernateEntity, String>(getSubjectHolder(),
DiscriminatorFormula.VALUE_PROPERTY) {
- @Override
- protected String buildValue_() {
- DiscriminatorFormula df = this.subject.getDiscriminatorFormula();
- return df == null ? null : df.getValue();
- }
-
- @Override
- protected void setValue_(String value) {
- if ("".equals(value)) value = null; //$NON-NLS-1$
- DiscriminatorFormula df = this.subject.getDiscriminatorFormula();
- if (value == null && df != null){
- this.subject.removeDiscriminatorFormula();
- } else {
- if (df == null){
- df = this.subject.addDiscriminatorFormula();
- }
- df.setValue(value);
- }
- }
- };
- }
-
- private EnumFormComboViewer<DiscriminatorColumn, DiscriminatorType>
addDiscriminatorTypeCombo(
- Composite container,
- PropertyValueModel<DiscriminatorColumn> discriminatorColumnHolder) {
-
- return new EnumFormComboViewer<DiscriminatorColumn, DiscriminatorType>(
- this,
- discriminatorColumnHolder,
- container)
- {
- @Override
- protected void addPropertyNames(Collection<String> propertyNames) {
- super.addPropertyNames(propertyNames);
- propertyNames.add(DiscriminatorColumn.DEFAULT_DISCRIMINATOR_TYPE_PROPERTY);
- propertyNames.add(DiscriminatorColumn.SPECIFIED_DISCRIMINATOR_TYPE_PROPERTY);
- }
-
- @Override
- protected DiscriminatorType[] getChoices() {
- return DiscriminatorType.values();
- }
-
- @Override
- protected DiscriminatorType getDefaultValue() {
- return getSubject().getDefaultDiscriminatorType();
- }
-
- @Override
- protected String displayString(DiscriminatorType value) {
- return buildDisplayString(
- JptUiMappingsMessages.class,
- DiscriminatorColumnComposite.class,
- value
- );
- }
-
- @Override
- protected String nullDisplayString() {
- return JptUiMappingsMessages.NoneSelected;
- }
-
- @Override
- protected DiscriminatorType getValue() {
- return getSubject().getSpecifiedDiscriminatorType();
- }
-
- @Override
- protected void setValue(DiscriminatorType value) {
- getSubject().setSpecifiedDiscriminatorType(value);
- }
- };
- }
-
- protected WritablePropertyValueModel<Boolean>
buildDiscriminatorColumnEnabledHolder() {
- return new PropertyAspectAdapter<Entity, Boolean>(getSubjectHolder(),
Entity.SPECIFIED_DISCRIMINATOR_COLUMN_IS_ALLOWED_PROPERTY) {
- @Override
- protected Boolean buildValue_() {
- return Boolean.valueOf(this.subject.specifiedDiscriminatorColumnIsAllowed());
- }
- };
- }
-
- protected class DetailsComposite extends FormPane<DiscriminatorColumn> {
- public DetailsComposite(FormPane<?> parentPane,
- PropertyValueModel<? extends DiscriminatorColumn> subjectHolder,
- Composite parent) {
-
- super(parentPane, subjectHolder, parent, false);
- }
-
- @Override
- protected void initializeLayout(Composite container) {
- // Length widgets
- Spinner lengthSpinner = addLabeledSpinner(
- container,
- JptUiMappingsMessages.ColumnComposite_length,
- buildLengthHolder(),
- -1,
- -1,
- Integer.MAX_VALUE,
- addDefaultLengthLabel(container),
- JpaHelpContextIds.MAPPING_COLUMN_LENGTH
- );
-
- updateGridData(container, lengthSpinner);
-
- // Column Definition widgets
- addLabeledText(
- container,
- JptUiMappingsMessages.ColumnComposite_columnDefinition,
- buildColumnDefinitionHolder(getSubjectHolder())
- );
- }
-
- private WritablePropertyValueModel<Integer> buildLengthHolder() {
-
- return new PropertyAspectAdapter<DiscriminatorColumn,
Integer>(getSubjectHolder(), DiscriminatorColumn.SPECIFIED_LENGTH_PROPERTY) {
- @Override
- protected Integer buildValue_() {
- return this.subject.getSpecifiedLength();
- }
-
- @Override
- protected void setValue_(Integer value) {
- if (value.intValue() == -1) {
- value = null;
- }
- this.subject.setSpecifiedLength(value);
- }
- };
- }
-
- private Control addDefaultLengthLabel(Composite container) {
-
- Label label = addLabel(
- container,
- JptUiMappingsMessages.DefaultEmpty
- );
-
- new LabeledControlUpdater(
- new LabeledLabel(label),
- buildDefaultLengthLabelHolder()
- );
-
- return label;
- }
-
- private PropertyValueModel<String> buildDefaultLengthLabelHolder() {
-
- return new TransformationPropertyValueModel<Integer,
String>(buildDefaultLengthHolder()) {
-
- @Override
- protected String transform(Integer value) {
-
- int defaultValue = (getSubject() != null) ? getSubject().getDefaultLength() :
- DiscriminatorColumn.DEFAULT_LENGTH;
-
- return NLS.bind(
- JptUiMappingsMessages.DefaultWithOneParam,
- Integer.valueOf(defaultValue)
- );
- }
- };
- }
-
- private WritablePropertyValueModel<Integer> buildDefaultLengthHolder() {
- return new PropertyAspectAdapter<DiscriminatorColumn,
Integer>(getSubjectHolder(), DiscriminatorColumn.DEFAULT_LENGTH_PROPERTY) {
- @Override
- protected Integer buildValue_() {
- return Integer.valueOf(this.subject.getDefaultLength());
- }
-
- @Override
- protected synchronized void subjectChanged() {
- Object oldValue = this.getValue();
- super.subjectChanged();
- Object newValue = this.getValue();
-
- // Make sure the default value is appended to the text
- if (oldValue == newValue && newValue == null) {
- this.fireAspectChange(Integer.valueOf(Integer.MIN_VALUE), newValue);
- }
- }
- };
- }
-
- private WritablePropertyValueModel<String>
buildColumnDefinitionHolder(PropertyValueModel<DiscriminatorColumn>
discriminatorColumnHolder) {
-
- return new PropertyAspectAdapter<DiscriminatorColumn,
String>(discriminatorColumnHolder, NamedColumn.COLUMN_DEFINITION_PROPERTY) {
- @Override
- protected String buildValue_() {
- return this.subject.getColumnDefinition();
- }
-
- @Override
- protected void setValue_(String value) {
- if (value.length() == 0) {
- value = null;
- }
- this.subject.setColumnDefinition(value);
- }
- };
- }
-
- /**
- * Changes the layout of the given container by changing which widget will
- * grab the excess of horizontal space. By default, the center control grabs
- * the excess space, we change it to be the right control.
- *
- * @param container The container containing the controls needing their
- * <code>GridData</code> to be modified from the default values
- * @param spinner The spinner that got created
- */
- private void updateGridData(Composite container, Spinner spinner) {
-
- // It is possible the spinner's parent is not the container of the
- // label, spinner and right control (a pane is sometimes required for
- // painting the spinner's border)
- Composite paneContainer = spinner.getParent();
-
- while (container != paneContainer.getParent()) {
- paneContainer = paneContainer.getParent();
- }
-
- Control[] controls = paneContainer.getChildren();
-
- GridData gridData = new GridData();
- gridData.grabExcessHorizontalSpace = false;
- gridData.horizontalAlignment = GridData.BEGINNING;
- controls[1].setLayoutData(gridData);
-
- controls[2].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- removeAlignRight(controls[2]);
- }
-
- }
-}
\ No newline at end of file
Deleted:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateIdMappingComposite.java
===================================================================
---
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateIdMappingComposite.java 2009-07-30
13:09:13 UTC (rev 16896)
+++
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateIdMappingComposite.java 2009-07-30
13:21:46 UTC (rev 16897)
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007-2009 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is 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
- *
- * Contributor:
- * Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-package org.jboss.tools.hibernate.jpt.ui.internal.java.details;
-
-import org.eclipse.jpt.core.context.Column;
-import org.eclipse.jpt.core.context.Converter;
-import org.eclipse.jpt.core.context.ConvertibleMapping;
-import org.eclipse.jpt.core.context.IdMapping;
-import org.eclipse.jpt.core.context.TemporalConverter;
-import org.eclipse.jpt.ui.WidgetFactory;
-import org.eclipse.jpt.ui.details.JpaComposite;
-import org.eclipse.jpt.ui.internal.mappings.JptUiMappingsMessages;
-import org.eclipse.jpt.ui.internal.mappings.details.ColumnComposite;
-import org.eclipse.jpt.ui.internal.mappings.details.TemporalTypeComposite;
-import org.eclipse.jpt.ui.internal.widgets.FormPane;
-import org.eclipse.jpt.utility.internal.model.value.PropertyAspectAdapter;
-import org.eclipse.jpt.utility.internal.model.value.TransformationPropertyValueModel;
-import org.eclipse.jpt.utility.model.value.PropertyValueModel;
-import org.eclipse.jpt.utility.model.value.WritablePropertyValueModel;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.jboss.tools.hibernate.jpt.core.internal.context.java.HibernateJavaIdMapping;
-import
org.jboss.tools.hibernate.jpt.ui.internal.mapping.details.HibernateGenerationComposite;
-
-/**
- * @author Dmitry Geraskov
- *
- */
-public class HibernateIdMappingComposite extends FormPane<HibernateJavaIdMapping>
-implements JpaComposite{
- /**
- * Creates a new <code>HibernateIdMappingComposite</code>.
- *
- * @param subjectHolder The holder of the subject <code>IdMapping</code>
- * @param parent The parent container
- * @param widgetFactory The factory used to create various common widgets
- */
- public HibernateIdMappingComposite(PropertyValueModel<? extends
HibernateJavaIdMapping> subjectHolder,
- Composite parent,
- WidgetFactory widgetFactory) {
-
- super(subjectHolder, parent, widgetFactory);
- }
-
- private PropertyValueModel<? extends Column> buildColumnHolder() {
- return new TransformationPropertyValueModel<IdMapping,
Column>(getSubjectHolder()) {
- @Override
- protected Column transform_(IdMapping value) {
- return value.getColumn();
- }
- };
- }
-
- @Override
- protected void initializeLayout(Composite container) {
-
- // Column widgets
- new ColumnComposite(this, buildColumnHolder(), container);
-
- initializeTypePane(container);
-
- // Generation pane
- new HibernateGenerationComposite(this, addSubPane(container, 10));
- }
-
-
- private void initializeTypePane(Composite container) {
-
- container = addCollapsableSection(
- container,
- JptUiMappingsMessages.TypeSection_type
- );
- ((GridLayout) container.getLayout()).numColumns = 2;
-
- // No converter
- Button noConverterButton = addRadioButton(
- container,
- JptUiMappingsMessages.TypeSection_default,
- buildNoConverterHolder(),
- null);
- ((GridData) noConverterButton.getLayoutData()).horizontalSpan = 2;
-
- PropertyValueModel<Converter> specifiedConverterHolder =
buildSpecifiedConverterHolder();
- // Temporal
- addRadioButton(
- container,
- JptUiMappingsMessages.TypeSection_temporal,
- buildTemporalBooleanHolder(),
- null);
- registerSubPane(new
TemporalTypeComposite(buildTemporalConverterHolder(specifiedConverterHolder), container,
getWidgetFactory()));
- }
-
-
- private WritablePropertyValueModel<Boolean> buildNoConverterHolder() {
- return new PropertyAspectAdapter<IdMapping, Boolean>(getSubjectHolder(),
ConvertibleMapping.SPECIFIED_CONVERTER_PROPERTY) {
- @Override
- protected Boolean buildValue_() {
- return Boolean.valueOf(this.subject.getSpecifiedConverter() == null);
- }
-
- @Override
- protected void setValue_(Boolean value) {
- if (value.booleanValue()) {
- this.subject.setSpecifiedConverter(Converter.NO_CONVERTER);
- }
- }
- };
- }
-
-
- private WritablePropertyValueModel<Boolean> buildTemporalBooleanHolder() {
- return new PropertyAspectAdapter<IdMapping, Boolean>(getSubjectHolder(),
ConvertibleMapping.SPECIFIED_CONVERTER_PROPERTY) {
- @Override
- protected Boolean buildValue_() {
- Converter converter = this.subject.getSpecifiedConverter();
- if (converter == null) {
- return Boolean.FALSE;
- }
- return Boolean.valueOf(converter.getType() == Converter.TEMPORAL_CONVERTER);
- }
-
- @Override
- protected void setValue_(Boolean value) {
- if (value.booleanValue()) {
- this.subject.setSpecifiedConverter(Converter.TEMPORAL_CONVERTER);
- }
- }
- };
- }
-
- private PropertyValueModel<Converter> buildSpecifiedConverterHolder() {
- return new PropertyAspectAdapter<IdMapping, Converter>(getSubjectHolder(),
ConvertibleMapping.SPECIFIED_CONVERTER_PROPERTY) {
- @Override
- protected Converter buildValue_() {
- return this.subject.getSpecifiedConverter();
- }
- };
- }
-
- private PropertyValueModel<TemporalConverter>
buildTemporalConverterHolder(PropertyValueModel<Converter> converterHolder) {
- return new TransformationPropertyValueModel<Converter,
TemporalConverter>(converterHolder) {
- @Override
- protected TemporalConverter transform_(Converter converter) {
- return (converter != null && converter.getType() ==
Converter.TEMPORAL_CONVERTER) ? (TemporalConverter) converter : null;
- }
- };
- }
-}
Modified:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateJavaInheritanceComposite.java
===================================================================
---
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateJavaInheritanceComposite.java 2009-07-30
13:09:13 UTC (rev 16896)
+++
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateJavaInheritanceComposite.java 2009-07-30
13:21:46 UTC (rev 16897)
@@ -15,6 +15,7 @@
import org.eclipse.jpt.ui.internal.widgets.FormPane;
import org.eclipse.swt.widgets.Composite;
import org.jboss.tools.hibernate.jpt.core.internal.context.java.HibernateJavaEntity;
+import
org.jboss.tools.hibernate.jpt.ui.internal.mapping.details.HibernateAbstractInheritanceComposite;
/**
* @author Dmitry Geraskov
Copied:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateAbstractInheritanceComposite.java
(from rev 16874,
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateAbstractInheritanceComposite.java)
===================================================================
---
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateAbstractInheritanceComposite.java
(rev 0)
+++
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateAbstractInheritanceComposite.java 2009-07-30
13:21:46 UTC (rev 16897)
@@ -0,0 +1,296 @@
+/*******************************************************************************
+ * Copyright (c) 2006, 2009 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
+ * Code copied from
org.eclipse.jpt.ui.internal.mappings.details.AbstractInheritanceComposite
+ ******************************************************************************/
+package org.jboss.tools.hibernate.jpt.ui.internal.mapping.details;
+
+import java.util.Collection;
+
+import org.eclipse.jpt.core.context.Entity;
+import org.eclipse.jpt.core.context.InheritanceType;
+import org.eclipse.jpt.ui.internal.JpaHelpContextIds;
+import org.eclipse.jpt.ui.internal.mappings.JptUiMappingsMessages;
+import org.eclipse.jpt.ui.internal.mappings.db.ColumnCombo;
+import org.eclipse.jpt.ui.internal.mappings.details.AbstractEntityComposite;
+import org.eclipse.jpt.ui.internal.mappings.details.AbstractInheritanceComposite;
+import org.eclipse.jpt.ui.internal.util.ControlEnabler;
+import org.eclipse.jpt.ui.internal.widgets.EnumFormComboViewer;
+import org.eclipse.jpt.ui.internal.widgets.FormPane;
+import org.eclipse.jpt.utility.internal.StringConverter;
+import org.eclipse.jpt.utility.internal.model.value.PropertyAspectAdapter;
+import org.eclipse.jpt.utility.internal.model.value.PropertyListValueModelAdapter;
+import org.eclipse.jpt.utility.model.value.ListValueModel;
+import org.eclipse.jpt.utility.model.value.WritablePropertyValueModel;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.custom.CCombo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.jboss.tools.hibernate.jpt.core.internal.context.HibernateEntity;
+
+/**
+ * Here the layout of this pane:
+ * <pre>
+ * -----------------------------------------------------------------------------
+ * | ---------------------------------------------------- |
+ * | Strategy: | EnumComboViewer |v| |
+ * | ---------------------------------------------------- |
+ * | ---------------------------------------------------- |
+ * | Value: | I |v| |
+ * | ---------------------------------------------------- |
+ * | |
+ * | > Discriminator Column |
+ * | |
+ * | ---------------------------------------------------- |
+ * | Name: | ColumnCombo |v| |
+ * | ---------------------------------------------------- |
+ * | ---------------------------------------------------- |
+ * | Formula: | Text |v| |
+ * | ---------------------------------------------------- |
+ * | ---------------------------------------------------- |
+ * | Type: | EnumComboViewer |v| |
+ * | ---------------------------------------------------- |
+ * | ---------------------------------------------------- |
+ * | Column Definition: | I | |
+ * | ---------------------------------------------------- |
+ * | ------------- |
+ * | Length: | I |I| |
+ * | ------------- |
+ * | ------------------------------------------------------------------------- |
+ * | | | |
+ * | | PrimaryKeyJoinColumnsComposite | |
+ * | | | |
+ * | ------------------------------------------------------------------------- |
+ *
-----------------------------------------------------------------------------</pre>
+ *
+ * @see Entity
+ * @see AbstractEntityComposite - The parent container
+ * @see ColumnCombo
+ * @see EnumComboViewer
+ * @see PrimaryKeyJoinColumnsComposite
+ *
+ * @version 2.0
+ * @since 2.0
+ */
+@SuppressWarnings("nls")
+public abstract class HibernateAbstractInheritanceComposite<T extends
HibernateEntity> extends FormPane<T> {
+
+ /**
+ * A key used to represent the default value, this is required to convert
+ * the selected item from a combo to <code>null</code>. This key is most
+ * likely never typed the user and it will help to convert the value to
+ * <code>null</code> when it's time to set the new selected value into
the
+ * model.
+ */
+ protected static String DEFAULT_KEY = "?!#!?#?#?default?#?!#?!#?";
+
+ protected static String NONE_KEY = "?!#!?#?#?none?#?!#?!#?";
+
+ /**
+ * Creates a new <code>InheritanceComposite</code>.
+ *
+ * @param parentPane The parent container of this one
+ * @param parent The parent container
+ */
+ public HibernateAbstractInheritanceComposite(FormPane<? extends T> parentPane,
+ Composite parent) {
+
+ super(parentPane, parent, false);
+ }
+
+ @Override
+ protected void initializeLayout(Composite container) {
+
+ int groupBoxMargin = getGroupBoxMargin();
+
+ Composite subPane = addSubPane(
+ container, 0, groupBoxMargin, 0, groupBoxMargin
+ );
+
+ // Strategy widgets
+ addLabeledComposite(
+ subPane,
+ JptUiMappingsMessages.InheritanceComposite_strategy,
+ addStrategyCombo(subPane),
+ JpaHelpContextIds.ENTITY_INHERITANCE_STRATEGY
+ );
+
+ // Discriminator Value widgets
+ CCombo discriminatorValueCombo = addEditableCCombo(
+ subPane,
+ buildDiscriminatorValueListHolder(),
+ buildDiscriminatorValueHolder(),
+ buildDiscriminatorValueConverter()
+ );
+ Label discriminatorValueLabel = addLabel(
+ subPane,
+ JptUiMappingsMessages.InheritanceComposite_discriminatorValue
+ );
+ addLabeledComposite(
+ subPane,
+ discriminatorValueLabel,
+ discriminatorValueCombo.getParent(),
+ null,
+ JpaHelpContextIds.ENTITY_INHERITANCE_DISCRIMINATOR_VALUE
+ );
+
+ new ControlEnabler(buildDiscriminatorValueEnabledHolder(), discriminatorValueCombo,
discriminatorValueLabel);
+
+ new HibernateDiscriminatorColumnComposite<HibernateEntity>(this, container);
+
+ // Primary Key Join Columns widgets
+ addPrimaryKeyJoinColumnsComposite(addSubPane(container, 5));
+ }
+
+ protected WritablePropertyValueModel<Boolean>
buildDiscriminatorValueEnabledHolder() {
+ return new PropertyAspectAdapter<Entity, Boolean>(getSubjectHolder(),
Entity.SPECIFIED_DISCRIMINATOR_VALUE_IS_ALLOWED_PROPERTY) {
+ @Override
+ protected Boolean buildValue_() {
+ return Boolean.valueOf(this.subject.specifiedDiscriminatorValueIsAllowed());
+ }
+ };
+ }
+
+ private ListValueModel<String> buildDefaultDiscriminatorListValueHolder() {
+ return new PropertyListValueModelAdapter<String>(
+ buildDefaultDiscriminatorValueHolder()
+ );
+ }
+
+ private WritablePropertyValueModel<String> buildDefaultDiscriminatorValueHolder()
{
+ return new PropertyAspectAdapter<Entity, String>(getSubjectHolder(),
Entity.DEFAULT_DISCRIMINATOR_VALUE_PROPERTY,
Entity.DISCRIMINATOR_VALUE_IS_UNDEFINED_PROPERTY) {
+ @Override
+ protected String buildValue_() {
+ String value = this.subject.getDefaultDiscriminatorValue();
+ if (value == null && this.subject.discriminatorValueIsUndefined()) {
+ return NONE_KEY;
+ }
+
+ if (value == null) {
+ value = DEFAULT_KEY;
+ }
+ else {
+ value = DEFAULT_KEY + value;
+ }
+
+ return value;
+ }
+ };
+ }
+
+ private StringConverter<String> buildDiscriminatorValueConverter() {
+ return new StringConverter<String>() {
+ public String convertToString(String value) {
+
+ if (getSubject() == null) {
+ return null;
+ }
+
+ if (value == null) {
+ value = getSubject().getDefaultDiscriminatorValue();
+ if (value == null && getSubject().discriminatorValueIsUndefined()) {
+ value = NONE_KEY;
+ }
+ else {
+ value = (value != null) ?
+ DEFAULT_KEY + value
+ :
+ DEFAULT_KEY;
+ }
+ }
+ if (value.startsWith(DEFAULT_KEY)) {
+ String defaultName = value.substring(DEFAULT_KEY.length());
+
+ if (defaultName.length() > 0) {
+ value = NLS.bind(
+ JptUiMappingsMessages.DefaultWithOneParam,
+ defaultName
+ );
+ }
+ else {
+ value = JptUiMappingsMessages.ProviderDefault;
+ }
+ }
+ if (value.startsWith(NONE_KEY)) {
+ value = JptUiMappingsMessages.NoneSelected;
+ }
+ return value;
+ }
+ };
+ }
+
+ private WritablePropertyValueModel<String> buildDiscriminatorValueHolder() {
+ return new PropertyAspectAdapter<Entity, String>(getSubjectHolder(),
Entity.SPECIFIED_DISCRIMINATOR_VALUE_PROPERTY) {
+ @Override
+ protected String buildValue_() {
+ return this.subject.getSpecifiedDiscriminatorValue();
+ }
+
+ @Override
+ protected void setValue_(String value) {
+
+ // Convert the default value or an empty string to null
+ if ((value != null) &&
+ ((value.length() == 0) || value.startsWith(DEFAULT_KEY) ||
value.startsWith(NONE_KEY))) {
+
+ value = null;
+ }
+
+ this.subject.setSpecifiedDiscriminatorValue(value);
+ }
+ };
+ }
+
+ private ListValueModel<String> buildDiscriminatorValueListHolder() {
+ return buildDefaultDiscriminatorListValueHolder();
+ }
+
+ private EnumFormComboViewer<Entity, InheritanceType> addStrategyCombo(Composite
container) {
+
+ return new EnumFormComboViewer<Entity, InheritanceType>(this, container) {
+
+ @Override
+ protected void addPropertyNames(Collection<String> propertyNames) {
+ super.addPropertyNames(propertyNames);
+ propertyNames.add(Entity.DEFAULT_INHERITANCE_STRATEGY_PROPERTY);
+ propertyNames.add(Entity.SPECIFIED_INHERITANCE_STRATEGY_PROPERTY);
+ }
+
+ @Override
+ protected InheritanceType[] getChoices() {
+ return InheritanceType.values();
+ }
+
+ @Override
+ protected InheritanceType getDefaultValue() {
+ return getSubject().getDefaultInheritanceStrategy();
+ }
+
+ @Override
+ protected String displayString(InheritanceType value) {
+ return buildDisplayString(
+ JptUiMappingsMessages.class,
+ AbstractInheritanceComposite.class,
+ value
+ );
+ }
+
+ @Override
+ protected InheritanceType getValue() {
+ return getSubject().getSpecifiedInheritanceStrategy();
+ }
+
+ @Override
+ protected void setValue(InheritanceType value) {
+ getSubject().setSpecifiedInheritanceStrategy(value);
+ }
+ };
+ }
+
+ protected abstract void addPrimaryKeyJoinColumnsComposite(Composite container);
+}
\ No newline at end of file
Copied:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateDiscriminatorColumnComposite.java
(from rev 16896,
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateDiscriminatorColumnComposite.java)
===================================================================
---
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateDiscriminatorColumnComposite.java
(rev 0)
+++
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateDiscriminatorColumnComposite.java 2009-07-30
13:21:46 UTC (rev 16897)
@@ -0,0 +1,432 @@
+/*******************************************************************************
+ * Copyright (c) 2007-2009 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is 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
+ *
+ * Contributor:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.hibernate.jpt.ui.internal.mapping.details;
+
+import java.util.Collection;
+
+import org.eclipse.jpt.core.context.DiscriminatorColumn;
+import org.eclipse.jpt.core.context.DiscriminatorType;
+import org.eclipse.jpt.core.context.Entity;
+import org.eclipse.jpt.core.context.NamedColumn;
+import org.eclipse.jpt.db.Table;
+import org.eclipse.jpt.ui.internal.JpaHelpContextIds;
+import org.eclipse.jpt.ui.internal.mappings.JptUiMappingsMessages;
+import org.eclipse.jpt.ui.internal.mappings.db.ColumnCombo;
+import org.eclipse.jpt.ui.internal.mappings.details.AbstractEntityComposite;
+import org.eclipse.jpt.ui.internal.mappings.details.DiscriminatorColumnComposite;
+import org.eclipse.jpt.ui.internal.util.LabeledControlUpdater;
+import org.eclipse.jpt.ui.internal.util.LabeledLabel;
+import org.eclipse.jpt.ui.internal.util.PaneEnabler;
+import org.eclipse.jpt.ui.internal.widgets.EnumFormComboViewer;
+import org.eclipse.jpt.ui.internal.widgets.FormPane;
+import org.eclipse.jpt.utility.internal.model.value.PropertyAspectAdapter;
+import org.eclipse.jpt.utility.internal.model.value.SimplePropertyValueModel;
+import org.eclipse.jpt.utility.internal.model.value.TransformationPropertyValueModel;
+import org.eclipse.jpt.utility.model.value.PropertyValueModel;
+import org.eclipse.jpt.utility.model.value.WritablePropertyValueModel;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Spinner;
+import org.jboss.tools.hibernate.jpt.core.internal.context.DiscriminatorFormula;
+import org.jboss.tools.hibernate.jpt.core.internal.context.HibernateEntity;
+
+/**
+ * Here the layout of this pane:
+ * <pre>
+ * -----------------------------------------------------------------------------
+ * | > Discriminator Column |
+ * | |
+ * | ---------------------------------------------------- |
+ * | Name: | ColumnCombo |v| |
+ * | ---------------------------------------------------- |
+ * | ---------------------------------------------------- |
+ * | Formula: | Text |v| |
+ * | ---------------------------------------------------- |
+ * | ---------------------------------------------------- |
+ * | Type: | EnumComboViewer |v| |
+ * | ---------------------------------------------------- |
+ * | > Details
+ * | ---------------------------------------------------- |
+ * | Column Definition: | I | |
+ * | ---------------------------------------------------- |
+ * | ------------- |
+ * | Length: | I |I| |
+ * | ------------- |
+ *
-----------------------------------------------------------------------------</pre>
+ *
+ * @see Entity
+ * @see AbstractEntityComposite - The parent container
+ * @see ColumnCombo
+ * @see EnumComboViewer
+ * @see PrimaryKeyJoinColumnsComposite
+ *
+ * @version 2.0
+ * @since 2.0
+ */
+public class HibernateDiscriminatorColumnComposite <T extends HibernateEntity>
extends FormPane<T> {
+
+ /**
+ * Creates a new <code>InheritanceComposite</code>.
+ *
+ * @param parentPane The parent container of this one
+ * @param parent The parent container
+ */
+ public HibernateDiscriminatorColumnComposite(FormPane<? extends T> parentPane,
+ Composite parent) {
+
+ super(parentPane, parent, false);
+ }
+
+ @Override
+ protected void initializeLayout(Composite container) {
+ // Discriminator Column sub-pane
+ Composite discriminatorColumnContainer = addTitledGroup(
+ addSubPane(container, 10),
+ JptUiMappingsMessages.InheritanceComposite_discriminatorColumnGroupBox
+ );
+
+ PropertyValueModel<DiscriminatorColumn> discriminatorColumnHolder =
+ buildDiscriminatorColumnHolder();
+
+ // Name widgets
+ addLabeledComposite(
+ discriminatorColumnContainer,
+ JptUiMappingsMessages.DiscriminatorColumnComposite_name,
+ addDiscriminatorColumnCombo(container, discriminatorColumnHolder),
+ JpaHelpContextIds.ENTITY_INHERITANCE_DISCRIMINATOR_COLUMN
+ );
+
+ // Formula widgets
+ addLabeledText(
+ discriminatorColumnContainer,
+ HibernateUIMappingMessages.HibernateDiscriminatorColumnComposite_formula,
+ buildDiscriminatorFormulaHolder(),
+ null//TODO help
+ );
+
+ // Discriminator Type widgets
+ addLabeledComposite(
+ discriminatorColumnContainer,
+ JptUiMappingsMessages.DiscriminatorColumnComposite_discriminatorType,
+ addDiscriminatorTypeCombo(container, discriminatorColumnHolder),
+ JpaHelpContextIds.ENTITY_INHERITANCE_DISCRIMINATOR_TYPE
+ );
+
+ container = addCollapsableSubSection(
+ discriminatorColumnContainer,
+ JptUiMappingsMessages.InheritanceComposite_detailsGroupBox,
+ new SimplePropertyValueModel<Boolean>(Boolean.FALSE)
+ );
+
+ new DetailsComposite(this, discriminatorColumnHolder, addSubPane(container, 0, 16));
+
+ new PaneEnabler(buildDiscriminatorColumnEnabledHolder(), this);
+ }
+
+
+ private ColumnCombo<DiscriminatorColumn> addDiscriminatorColumnCombo(
+ Composite container,
+ PropertyValueModel<DiscriminatorColumn> discriminatorColumnHolder) {
+
+ return new ColumnCombo<DiscriminatorColumn>(
+ this,
+ discriminatorColumnHolder,
+ container)
+ {
+
+ @Override
+ protected void addPropertyNames(Collection<String> propertyNames) {
+ super.addPropertyNames(propertyNames);
+ propertyNames.add(NamedColumn.SPECIFIED_NAME_PROPERTY);
+ propertyNames.add(NamedColumn.DEFAULT_NAME_PROPERTY);
+ }
+
+ @Override
+ protected String getDefaultValue() {
+ return getSubject().getDefaultName();
+ }
+
+ @Override
+ protected void setValue(String value) {
+ getSubject().setSpecifiedName(value);
+ }
+
+ @Override
+ protected Table getDbTable_() {
+ return getSubject().getDbTable();
+ }
+
+ @Override
+ protected String getValue() {
+ return getSubject().getSpecifiedName();
+ }
+
+ @Override
+ protected String buildNullDefaultValueEntry() {
+ return JptUiMappingsMessages.NoneSelected;
+ }
+ };
+ }
+
+
+ private PropertyValueModel<DiscriminatorColumn> buildDiscriminatorColumnHolder()
{
+ return new PropertyAspectAdapter<Entity, DiscriminatorColumn>(getSubjectHolder())
{
+ @Override
+ protected DiscriminatorColumn buildValue_() {
+ return this.subject.getDiscriminatorColumn();
+ }
+ };
+ }
+
+
+ private WritablePropertyValueModel<String> buildDiscriminatorFormulaHolder() {
+ return new PropertyAspectAdapter<HibernateEntity, String>(getSubjectHolder(),
DiscriminatorFormula.VALUE_PROPERTY) {
+ @Override
+ protected String buildValue_() {
+ DiscriminatorFormula df = this.subject.getDiscriminatorFormula();
+ return df == null ? null : df.getValue();
+ }
+
+ @Override
+ protected void setValue_(String value) {
+ if ("".equals(value)) value = null; //$NON-NLS-1$
+ DiscriminatorFormula df = this.subject.getDiscriminatorFormula();
+ if (value == null && df != null){
+ this.subject.removeDiscriminatorFormula();
+ } else {
+ if (df == null){
+ df = this.subject.addDiscriminatorFormula();
+ }
+ df.setValue(value);
+ }
+ }
+ };
+ }
+
+ private EnumFormComboViewer<DiscriminatorColumn, DiscriminatorType>
addDiscriminatorTypeCombo(
+ Composite container,
+ PropertyValueModel<DiscriminatorColumn> discriminatorColumnHolder) {
+
+ return new EnumFormComboViewer<DiscriminatorColumn, DiscriminatorType>(
+ this,
+ discriminatorColumnHolder,
+ container)
+ {
+ @Override
+ protected void addPropertyNames(Collection<String> propertyNames) {
+ super.addPropertyNames(propertyNames);
+ propertyNames.add(DiscriminatorColumn.DEFAULT_DISCRIMINATOR_TYPE_PROPERTY);
+ propertyNames.add(DiscriminatorColumn.SPECIFIED_DISCRIMINATOR_TYPE_PROPERTY);
+ }
+
+ @Override
+ protected DiscriminatorType[] getChoices() {
+ return DiscriminatorType.values();
+ }
+
+ @Override
+ protected DiscriminatorType getDefaultValue() {
+ return getSubject().getDefaultDiscriminatorType();
+ }
+
+ @Override
+ protected String displayString(DiscriminatorType value) {
+ return buildDisplayString(
+ JptUiMappingsMessages.class,
+ DiscriminatorColumnComposite.class,
+ value
+ );
+ }
+
+ @Override
+ protected String nullDisplayString() {
+ return JptUiMappingsMessages.NoneSelected;
+ }
+
+ @Override
+ protected DiscriminatorType getValue() {
+ return getSubject().getSpecifiedDiscriminatorType();
+ }
+
+ @Override
+ protected void setValue(DiscriminatorType value) {
+ getSubject().setSpecifiedDiscriminatorType(value);
+ }
+ };
+ }
+
+ protected WritablePropertyValueModel<Boolean>
buildDiscriminatorColumnEnabledHolder() {
+ return new PropertyAspectAdapter<Entity, Boolean>(getSubjectHolder(),
Entity.SPECIFIED_DISCRIMINATOR_COLUMN_IS_ALLOWED_PROPERTY) {
+ @Override
+ protected Boolean buildValue_() {
+ return Boolean.valueOf(this.subject.specifiedDiscriminatorColumnIsAllowed());
+ }
+ };
+ }
+
+ protected class DetailsComposite extends FormPane<DiscriminatorColumn> {
+ public DetailsComposite(FormPane<?> parentPane,
+ PropertyValueModel<? extends DiscriminatorColumn> subjectHolder,
+ Composite parent) {
+
+ super(parentPane, subjectHolder, parent, false);
+ }
+
+ @Override
+ protected void initializeLayout(Composite container) {
+ // Length widgets
+ Spinner lengthSpinner = addLabeledSpinner(
+ container,
+ JptUiMappingsMessages.ColumnComposite_length,
+ buildLengthHolder(),
+ -1,
+ -1,
+ Integer.MAX_VALUE,
+ addDefaultLengthLabel(container),
+ JpaHelpContextIds.MAPPING_COLUMN_LENGTH
+ );
+
+ updateGridData(container, lengthSpinner);
+
+ // Column Definition widgets
+ addLabeledText(
+ container,
+ JptUiMappingsMessages.ColumnComposite_columnDefinition,
+ buildColumnDefinitionHolder(getSubjectHolder())
+ );
+ }
+
+ private WritablePropertyValueModel<Integer> buildLengthHolder() {
+
+ return new PropertyAspectAdapter<DiscriminatorColumn,
Integer>(getSubjectHolder(), DiscriminatorColumn.SPECIFIED_LENGTH_PROPERTY) {
+ @Override
+ protected Integer buildValue_() {
+ return this.subject.getSpecifiedLength();
+ }
+
+ @Override
+ protected void setValue_(Integer value) {
+ if (value.intValue() == -1) {
+ value = null;
+ }
+ this.subject.setSpecifiedLength(value);
+ }
+ };
+ }
+
+ private Control addDefaultLengthLabel(Composite container) {
+
+ Label label = addLabel(
+ container,
+ JptUiMappingsMessages.DefaultEmpty
+ );
+
+ new LabeledControlUpdater(
+ new LabeledLabel(label),
+ buildDefaultLengthLabelHolder()
+ );
+
+ return label;
+ }
+
+ private PropertyValueModel<String> buildDefaultLengthLabelHolder() {
+
+ return new TransformationPropertyValueModel<Integer,
String>(buildDefaultLengthHolder()) {
+
+ @Override
+ protected String transform(Integer value) {
+
+ int defaultValue = (getSubject() != null) ? getSubject().getDefaultLength() :
+ DiscriminatorColumn.DEFAULT_LENGTH;
+
+ return NLS.bind(
+ JptUiMappingsMessages.DefaultWithOneParam,
+ Integer.valueOf(defaultValue)
+ );
+ }
+ };
+ }
+
+ private WritablePropertyValueModel<Integer> buildDefaultLengthHolder() {
+ return new PropertyAspectAdapter<DiscriminatorColumn,
Integer>(getSubjectHolder(), DiscriminatorColumn.DEFAULT_LENGTH_PROPERTY) {
+ @Override
+ protected Integer buildValue_() {
+ return Integer.valueOf(this.subject.getDefaultLength());
+ }
+
+ @Override
+ protected synchronized void subjectChanged() {
+ Object oldValue = this.getValue();
+ super.subjectChanged();
+ Object newValue = this.getValue();
+
+ // Make sure the default value is appended to the text
+ if (oldValue == newValue && newValue == null) {
+ this.fireAspectChange(Integer.valueOf(Integer.MIN_VALUE), newValue);
+ }
+ }
+ };
+ }
+
+ private WritablePropertyValueModel<String>
buildColumnDefinitionHolder(PropertyValueModel<DiscriminatorColumn>
discriminatorColumnHolder) {
+
+ return new PropertyAspectAdapter<DiscriminatorColumn,
String>(discriminatorColumnHolder, NamedColumn.COLUMN_DEFINITION_PROPERTY) {
+ @Override
+ protected String buildValue_() {
+ return this.subject.getColumnDefinition();
+ }
+
+ @Override
+ protected void setValue_(String value) {
+ if (value.length() == 0) {
+ value = null;
+ }
+ this.subject.setColumnDefinition(value);
+ }
+ };
+ }
+
+ /**
+ * Changes the layout of the given container by changing which widget will
+ * grab the excess of horizontal space. By default, the center control grabs
+ * the excess space, we change it to be the right control.
+ *
+ * @param container The container containing the controls needing their
+ * <code>GridData</code> to be modified from the default values
+ * @param spinner The spinner that got created
+ */
+ private void updateGridData(Composite container, Spinner spinner) {
+
+ // It is possible the spinner's parent is not the container of the
+ // label, spinner and right control (a pane is sometimes required for
+ // painting the spinner's border)
+ Composite paneContainer = spinner.getParent();
+
+ while (container != paneContainer.getParent()) {
+ paneContainer = paneContainer.getParent();
+ }
+
+ Control[] controls = paneContainer.getChildren();
+
+ GridData gridData = new GridData();
+ gridData.grabExcessHorizontalSpace = false;
+ gridData.horizontalAlignment = GridData.BEGINNING;
+ controls[1].setLayoutData(gridData);
+
+ controls[2].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ removeAlignRight(controls[2]);
+ }
+
+ }
+}
\ No newline at end of file
Copied:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateIdMappingComposite.java
(from rev 16763,
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/java/details/HibernateIdMappingComposite.java)
===================================================================
---
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateIdMappingComposite.java
(rev 0)
+++
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/mapping/details/HibernateIdMappingComposite.java 2009-07-30
13:21:46 UTC (rev 16897)
@@ -0,0 +1,157 @@
+/*******************************************************************************
+ * Copyright (c) 2007-2009 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is 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
+ *
+ * Contributor:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.hibernate.jpt.ui.internal.mapping.details;
+
+import org.eclipse.jpt.core.context.Column;
+import org.eclipse.jpt.core.context.Converter;
+import org.eclipse.jpt.core.context.ConvertibleMapping;
+import org.eclipse.jpt.core.context.IdMapping;
+import org.eclipse.jpt.core.context.TemporalConverter;
+import org.eclipse.jpt.ui.WidgetFactory;
+import org.eclipse.jpt.ui.details.JpaComposite;
+import org.eclipse.jpt.ui.internal.mappings.JptUiMappingsMessages;
+import org.eclipse.jpt.ui.internal.mappings.details.ColumnComposite;
+import org.eclipse.jpt.ui.internal.mappings.details.TemporalTypeComposite;
+import org.eclipse.jpt.ui.internal.widgets.FormPane;
+import org.eclipse.jpt.utility.internal.model.value.PropertyAspectAdapter;
+import org.eclipse.jpt.utility.internal.model.value.TransformationPropertyValueModel;
+import org.eclipse.jpt.utility.model.value.PropertyValueModel;
+import org.eclipse.jpt.utility.model.value.WritablePropertyValueModel;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.jboss.tools.hibernate.jpt.core.internal.context.java.HibernateJavaIdMapping;
+
+/**
+ * @author Dmitry Geraskov
+ *
+ */
+public class HibernateIdMappingComposite extends FormPane<HibernateJavaIdMapping>
+implements JpaComposite{
+ /**
+ * Creates a new <code>HibernateIdMappingComposite</code>.
+ *
+ * @param subjectHolder The holder of the subject <code>IdMapping</code>
+ * @param parent The parent container
+ * @param widgetFactory The factory used to create various common widgets
+ */
+ public HibernateIdMappingComposite(PropertyValueModel<? extends
HibernateJavaIdMapping> subjectHolder,
+ Composite parent,
+ WidgetFactory widgetFactory) {
+
+ super(subjectHolder, parent, widgetFactory);
+ }
+
+ private PropertyValueModel<? extends Column> buildColumnHolder() {
+ return new TransformationPropertyValueModel<IdMapping,
Column>(getSubjectHolder()) {
+ @Override
+ protected Column transform_(IdMapping value) {
+ return value.getColumn();
+ }
+ };
+ }
+
+ @Override
+ protected void initializeLayout(Composite container) {
+
+ // Column widgets
+ new ColumnComposite(this, buildColumnHolder(), container);
+
+ initializeTypePane(container);
+
+ // Generation pane
+ new HibernateGenerationComposite(this, addSubPane(container, 10));
+ }
+
+
+ private void initializeTypePane(Composite container) {
+
+ container = addCollapsableSection(
+ container,
+ JptUiMappingsMessages.TypeSection_type
+ );
+ ((GridLayout) container.getLayout()).numColumns = 2;
+
+ // No converter
+ Button noConverterButton = addRadioButton(
+ container,
+ JptUiMappingsMessages.TypeSection_default,
+ buildNoConverterHolder(),
+ null);
+ ((GridData) noConverterButton.getLayoutData()).horizontalSpan = 2;
+
+ PropertyValueModel<Converter> specifiedConverterHolder =
buildSpecifiedConverterHolder();
+ // Temporal
+ addRadioButton(
+ container,
+ JptUiMappingsMessages.TypeSection_temporal,
+ buildTemporalBooleanHolder(),
+ null);
+ registerSubPane(new
TemporalTypeComposite(buildTemporalConverterHolder(specifiedConverterHolder), container,
getWidgetFactory()));
+ }
+
+
+ private WritablePropertyValueModel<Boolean> buildNoConverterHolder() {
+ return new PropertyAspectAdapter<IdMapping, Boolean>(getSubjectHolder(),
ConvertibleMapping.SPECIFIED_CONVERTER_PROPERTY) {
+ @Override
+ protected Boolean buildValue_() {
+ return Boolean.valueOf(this.subject.getSpecifiedConverter() == null);
+ }
+
+ @Override
+ protected void setValue_(Boolean value) {
+ if (value.booleanValue()) {
+ this.subject.setSpecifiedConverter(Converter.NO_CONVERTER);
+ }
+ }
+ };
+ }
+
+
+ private WritablePropertyValueModel<Boolean> buildTemporalBooleanHolder() {
+ return new PropertyAspectAdapter<IdMapping, Boolean>(getSubjectHolder(),
ConvertibleMapping.SPECIFIED_CONVERTER_PROPERTY) {
+ @Override
+ protected Boolean buildValue_() {
+ Converter converter = this.subject.getSpecifiedConverter();
+ if (converter == null) {
+ return Boolean.FALSE;
+ }
+ return Boolean.valueOf(converter.getType() == Converter.TEMPORAL_CONVERTER);
+ }
+
+ @Override
+ protected void setValue_(Boolean value) {
+ if (value.booleanValue()) {
+ this.subject.setSpecifiedConverter(Converter.TEMPORAL_CONVERTER);
+ }
+ }
+ };
+ }
+
+ private PropertyValueModel<Converter> buildSpecifiedConverterHolder() {
+ return new PropertyAspectAdapter<IdMapping, Converter>(getSubjectHolder(),
ConvertibleMapping.SPECIFIED_CONVERTER_PROPERTY) {
+ @Override
+ protected Converter buildValue_() {
+ return this.subject.getSpecifiedConverter();
+ }
+ };
+ }
+
+ private PropertyValueModel<TemporalConverter>
buildTemporalConverterHolder(PropertyValueModel<Converter> converterHolder) {
+ return new TransformationPropertyValueModel<Converter,
TemporalConverter>(converterHolder) {
+ @Override
+ protected TemporalConverter transform_(Converter converter) {
+ return (converter != null && converter.getType() ==
Converter.TEMPORAL_CONVERTER) ? (TemporalConverter) converter : null;
+ }
+ };
+ }
+}
Modified:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/platform/HibernateJpaUiFactory.java
===================================================================
---
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/platform/HibernateJpaUiFactory.java 2009-07-30
13:09:13 UTC (rev 16896)
+++
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.ui/src/org/jboss/tools/hibernate/jpt/ui/internal/platform/HibernateJpaUiFactory.java 2009-07-30
13:21:46 UTC (rev 16897)
@@ -31,8 +31,8 @@
import
org.jboss.tools.hibernate.jpt.core.internal.context.basic.BasicHibernateProperties;
import org.jboss.tools.hibernate.jpt.core.internal.context.java.HibernateJavaEntity;
import org.jboss.tools.hibernate.jpt.core.internal.context.java.HibernateJavaIdMapping;
-import
org.jboss.tools.hibernate.jpt.ui.internal.java.details.HibernateIdMappingComposite;
import
org.jboss.tools.hibernate.jpt.ui.internal.java.details.HibernateJavaEntityComposite;
+import
org.jboss.tools.hibernate.jpt.ui.internal.mapping.details.HibernateIdMappingComposite;
import
org.jboss.tools.hibernate.jpt.ui.internal.persistence.details.HibernatePropertiesComposite;
/**