Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
New Help for Old Friends VIII
Contents
- 1 Overview
- 2 WTP Git migration
- 3 Dali
- 3.1 General
- 3.2 Common Utility (Provisional API)
- 3.3 Common Core (Provisional API)
- 3.4 JPA Database (Provisional API)
- 3.5 JPA Core (Provisional API)
- 3.6 JAXB Core (Provisional API)
- 3.7 EclipseLink JPA Core (Provisional API)
- 3.8 EclipseLink JAXB Core (Provisional API)
- 3.9 Common UI (Provisional API)
- 3.10 JPA UI (Provisional API)
- 3.11 JPQL Query (content assist and validation) (Provisional API)
- 3.12 JAXB UI (Provisional API)
- 4 Reference
Overview
This page collects notes and pointers to changes coming up in the WTP 3.5 (Kepler) release.
This page acts as a central "jumping off" point for those adopters of WTP that are moving up from a previous version of WTP. Most of this information may be already contained in various mailing lists and Bugzilla reports, but it is believed best to have a central place to get people started. Adopters: if you run into trouble or notice things that are not covered here, please update this page and/or let us know (such as by opening a bug, or sending a note to wtp-dev). Web Tools is a Platform and we strive to provide compatible API evolution with clear migration paths, instructions, etc.
One thing we have learned in the past is that some adopters do not move with us to every new release. Some early adopters went from 0.7 directly to 1.5, for example. Unfortunately, it is difficult to present the information in that way, covering multiple changes across multiple version ranges, so those types of migrations have to read about migrating to each version.
Note: as these notes develop and grow in number, they may occasionally be re-organized into categories, etc.
WTP Git migration
WTP has moved its source code repository from CVS to Git. A detailed list of what moved where can be found here
Dali
General
- All the
BundleActivatorimplementations (i.e. "plug-in" classes; e.g.JptJpaCorePlugin) were moved from public packages to private packages and all public members moved to the appropriate public interfaces etc.
- Various convenience
Transformers have been added to many public interfaces.
Common Utility (Provisional API)
- added interfaces:
-
Association -
Bag -
Queue -
Stack -
ListIterable -
MultiThreadedExceptionHandler -
Node -
Problem -
IntReference -
ModifiableIntReference -
ModifiableBooleanReference -
Transformer
-
- moved interfaces:
-
ObjectReference -
ModifiableObjectReference -
BooleanReference -
IndentingPrintWriter -
Synchronizer(moved to JAXB core plug-in) -
CallbackSynchronizer(moved to JAXB core plug-in)
-
- removed all "tree"-related events and listeners
- removed the
Filterinterface and converted allFilters toPredicates
- renamed
MultiThreadedExceptionHandlertoMultiThreadExceptionHandler
- renamed various
CommandExecutorclasses:
| Old | New |
|---|---|
| CommandExecutor | CommandContext |
| ExtendedCommandExecutor | ExtendedCommandContext |
| InterruptibleCommandExecutor | InterruptibleCommandContext |
| StatefulCommandExecutor | StatefulCommandContext |
| StatefulExtendedCommandExecutor | StatefulExtendedCommandContext |
Common Core (Provisional API)
- added interfaces:
-
JptWorkspace -
LibraryValidatorManager -
ResourceLocatorManager
-
-
JptCommonCorePlugin- moved to private package and moved its members to the appropriate public interfaces etc.
| Old | New |
|---|---|
| JAVA_SOURCE_CONTENT_TYPE | JavaResourceCompilationUnit.CONTENT_TYPE |
| JAVA_SOURCE_RESOURCE_TYPE | JavaResourceCompilationUnit.RESOURCE_TYPE |
| JAVA_SOURCE_PACKAGE_INFO_CONTENT_TYPE | JavaResourceCompilationUnit.PACKAGE_INFO_CONTENT_TYPE |
| JAVA_SOURCE_PACKAGE_INFO_RESOURCE_TYPE | JavaResourceCompilationUnit.PACKAGE_INFO_RESOURCE_TYPE |
| JAR_CONTENT_TYPE | JavaResourcePackageFragmentRoot.JAR_CONTENT_TYPE |
| JAR_SOURCE_RESOURCE_TYPE | JavaResourcePackageFragmentRoot.JAR_RESOURCE_TYPE |
| JavaResourceClassFile.CONTENT_TYPE | |
| JavaResourceClassFile.CONTENT_TYPE_ID | |
| getLibraryValidators(...) | LibraryValidatorManager.getLibraryValidators(...) |
- reworked resource types
- added
resourcTypesextension point to specify resource types and their relationships - converted
JptResourceTypeto an interface with instances defined by theresourcTypesextension point - extensions are managed by theJptResourceTypeManager - defined basic resource types
- added
JptResourceTypeReference - added
ContentTypeReference
- added
- added
TypeBindingto encapsulate type information (e.g. simple/qualified name, is interface/enum) spread elsewhere in resource model
-
JavaResourceAbstractType- Removed
-
getQualifiedName() - getPackageName()
- isMemberType() (and associated property strings).
-
- Added
getTypeBinding()(and associated property string) whose API now takes their place (and adds related API).
- Removed
-
JavaResourceAttribute- Removed
-
getTypeArrayComponentTypeName() - getTypeArrayDimensionality()
- getTypeInterfaceNames()
- getTypeName()
- getTypeSuperclassNames()
- getTypeTypeArgumentName(int)
- getTypeTypeArgumentNames()
- getTypeTypeArgumentNamesSize()
- typeIsArray()
- typeIsEnum()
- typeIsInterface()
- typeIsSubTypeOf(String)
- typeIsVariablePrimitive() (and associated property strings).
-
- Added
getTypeBinding()(and associated property string) whose API now takes their place (and adds related API).
- Removed
-
JavaResourceField- addedsynchronizeWith(FieldDeclaration, VariableDeclarationFragment)to replacesynchronizeWith(CompilationUnit)
-
JavaResourceMethod- removedinitialize(MethodDeclaration)as it was unnecessary.
-
JavaResourceType- Added
-
getAttributeTypeBinding(JavaResourceAttribute) -
getField(String name)
-
- Added
-
Annotation- initialize/synchronizeWith(Annotation) are preferred where possible over initialize/syncrhonizeWith(CompilationUnit). It is probably more performant to use the Annotation that has already been discovered than to search through the CompilationUnit again. If reusing any of the generic JPA annotation implementations, clients will now need to call initialize(Annotation)- added
-
initialize(Annotation). -
synchronizeWith(Annotation).
-
- added
-
JavaResourceAnnotatedElement- added
-
getContainerAnnotation(String) : Annotation. - You can no longer use getAnnotation(String) to return container annotations. This was changed to improve performance. see bug 376787
-
- changed
-
getNameTextRange(CompilationUnit)togetNameTextRange(). Caching the nameTextRangeduring sync -
getKind()togetAstNodeType() JavaResourceAnnotatedElement.Kindrenamed toJavaResourceAnnotatedElement.AstNodeType. ReplacedKind.getAstNodeType()withAstNodeType.matches(int)
-
- added
-
AnnotationAdapter- changed method signature of
newMarkerAnnotation()to returnMarkerAnnotation - changed method signature of
newSingleMemberAnnotation()to returnSingleMemberAnnotation - changed method signature of
newNormalAnnotation()to returnNormalAnnotation
- changed method signature of
-
AnnotationElementAdapter- added methods for performance improvements
-
getValue(Annotation) -
getExpression(Annotation)
-
- added methods for performance improvements
-
DeclarationAnnotationElementAdapter- added methods for performance improvements
-
getValue(Annotation) -
getExpression(Annotation)
-
- added methods for performance improvements
-
NotifyingRepeatingJobCommand.Listener- changed signature of method
executionQuiesced(JobCommand, IProgressMonitor) : IStatustoexecutionQuiesced(JobCommand) : void- all listeners are notified; there is no way to cancel this notification
- changed signature of method
-
*.common.core.resource.xml.JptXmlResource- moved/renamed from *.jpa.core.JpaXmlResource
-
ResourceLocatorrenamed methods:-
resourceLocationIsValid(...)renamed tolocationIsValid(...) -
getDefaultResourceLocation(...)renamed togetDefaultLocation(...) -
getResourcePath(...)renamed togetWorkspacePath(...)
-
-
ProjectResourceLocatorrenamed methods:-
resourceLocationIsValid(...)renamed tolocationIsValid(...) -
getDefaultResourceLocation(...)renamed togetDefaultLocation(...) -
getResourcePath(...)renamed togetWorkspacePath(...)
-
-
EBaseObject- added method
getFullTextRange()
- added method
- renamed
ContentTypeReference.CONTENT_TYPE_TRANSFORMERtoTRANSFORMER
- moved
GenericAnnotationProviderto an internal package
- renamed
JptResourceTypeReference.RESOURCE_TYPE_TRANSFORMERtoTRANSFORMER
- renamed
JavaResourceCompilationUnit.getModifySharedDocumentCommandExecutor()togetModifySharedDocumentCommandContext()
- renamed
JavaResourceNodetoJavaResourceModel
- moved
EmfToolsto an internal package
- renamed
JpaXmlResourceProvidertoJptXmlResourceProvider
- moved
AbstractTextRangeto an internal package
- renamed various
CommandExecutorclasses:
| Old | New |
|---|---|
| CombinedCommandExecutor | CombinedCommandContext |
| CombinedExtendedCommandExecutor | CombinedExtendedCommandContext |
| ExtendedCommandExecutor | ExtendedCommandContext |
| JobCommandExecutor | JobCommandContext |
JPA Database (Provisional API)
-
JptJpaDbPlugin- moved to private package and moved its members to the appropriate public interfaces etc.
| Old | New |
|---|---|
| getConnectionProfileFactory() | IWorkspace.getAdapter(ConnectionProfileFactory.class) |
| buildDriverClasspathContainerFor(...) | ConnectionProfileFactory.buildDriverClasspathContainer(...) |
- promoted the method
refresh()fromSchematoDatabaseObject - added
ConnectionProfileFactory.getWorkspace()
JPA Core (Provisional API)
-
JptJpaCorePlugin- moved to private package and moved its members to the appropriate public interfaces etc.
| Old | New |
|---|---|
| DEFAULT_PERSISTENCE_XML_RUNTIME_PATH | XmlPersistence.DEFAULT_RUNTIME_PATH |
| PERSISTENCE_XML_CONTENT_TYPE | XmlPersistence.CONTENT_TYPE |
| PERSISTENCE_XML_1_0_CONTENT_TYPE | XmlPersistence.CONTENT_TYPE |
| PERSISTENCE_XML_2_0_CONTENT_TYPE | XmlPersistence.CONTENT_TYPE |
| MAPPING_FILE_CONTENT_TYPE | ResourceMappingFile.Root.CONTENT_TYPE |
| DEFAULT_ORM_XML_RUNTIME_PATH | XmlEntityMappings.DEFAULT_RUNTIME_PATH |
| ORM_XML_CONTENT_TYPE | XmlEntityMappings.CONTENT_TYPE |
| ORM_XML_RESOURCE_TYPE | XmlEntityMappings.RESOURCE_TYPE |
| ORM_XML_1_0_RESOURCE_TYPE | XmlEntityMappings.RESOURCE_TYPE_1_0 |
| ORM_XML_2_0_RESOURCE_TYPE | XmlEntityMappings.RESOURCE_TYPE_2_0 |
| VALIDATION_MARKER_ID | JpaValidator.MARKER_ID |
| VALIDATOR_ID | removed |
| WEB_FACET | ProjectFacetsManager.getProjectFacet(IModuleConstants.JST_WEB_MODULE) |
| USER_OVERRIDE_DEFAULT_CATALOG | JpaProject.USER_OVERRIDE_DEFAULT_CATALOG_PERSISTENT_PROPERTY_KEY |
| USER_OVERRIDE_DEFAULT_SCHEMA | JpaProject.USER_OVERRIDE_DEFAULT_SCHEMA_PERSISTENT_PROPERTY_KEY |
| DATA_SOURCE_CONNECTION_PROFILE_NAME | JpaDataSource.CONNECTION_PROFILE_NAME_PERSISTENT_PROPERTY_KEY |
| getConnectionProfileName(...) | removed |
| setConnectionProfileName(...) | removed |
| getUserOverrideDefaultCatalog(...) | removed |
| setUserOverrideDefaultCatalog(...) | removed |
| getUserOverrideDefaultSchema(...) | removed |
| setUserOverrideDefaultSchema(...) | removed |
| clearProjectPersistentProperties(...) | removed |
| getJarRuntimeRootPath(...) | ProjectTools.getJarRuntimeRootPath(...) |
| nodeIsJpa2_0Compatible(...) | JptResourceType.isCompatibleWith(...) |
| nodeIsXml2_0Compatible(...) | JptResourceType.isCompatibleWith(...) |
| resourceTypeIsCompatible(...) | JptResourceType.isCompatibleWith(...) |
| projectHasWebFacet(...) | ProjectTools.hasWebFacet(...) |
- moved preference code to new facade
JpaPreferences
-
JpaStructureNodenow extendsJpaContextNode
- renamed
AbstractXmlResourceProvidertoAbstractJpaXmlResourceProviderand moved to internal package
- moved
JpaXmlResourceProviderto appropriate package and added methodcreateFileAndResource(...)
- cleaned up support for non-XML mapping files:
- changed the resource passed to the method
JpaFactory.buildMappingFile(...)fromJpaXmlResourcetoObject - moved
MappingFileRootto be a member type:MappingFile.Root - added change support for
MappingFile.ROOT_PROPERTY - added methods to
MappingFile:-
getResourceMappingFile()
-
-
MappingFilePersistenceUnitMetadatanow extendsJpaContextNode, notXmlContextNode -
MappingFilePersistenceUnitDefaultsnow extendsJpaContextNode, notXmlContextNode - added support for a root to
XmlFile -
OrmXmlnow extendsXmlFile -
EntityMappingsnow extends bothMappingFile.RootandXmlFile.Root -
Persistencenow extendsXmlFile.Root - replaced
PersistenceXml.getPersistence()withgetRoot() - added method
MappingFile.getDefinition()
- changed the resource passed to the method
- added method
EntityMappings.getOrmXml()
- removed
JpaXmlStructureNodeand moved methodgetXmlCompletionProposals(...)toXmlContextNode
- removed unneeded method
MappingFileRef.isFor(...)
- renamed
MappingFileRef.isImplied()toMappingFileRef.isDefault()
- renamed
PersistenceXmlContextNodeFactory.buildImpliedMappingFileRef(...)toPersistenceXmlContextNodeFactory.buildVirtualMappingFileRef(...)
- added method
JpaNode.getJpaPlatform()
- deleted class
JpaFacet- moved
IDtoJpaProject.FACET_ID - moved
FACETtoJpaProject.FACET - moved
VERSION_1_0toJpaProject.FACET_VERSION_STRINGandJpaProject.FACET_VERSION - moved
VERSION_2_0toJpaProject2_0.FACET_VERSION_STRINGandJpaProject2_0.FACET_VERSION
- moved
- changed
JpaPlatformFactory.buildJpaPlatform(String)toJpaPlatformFactory.buildJpaPlatform(JpaPlatform.Config)
- reworked
JpaPlatformManager- no longer a singleton - access it via
JpaWorkspace - renamed various methods to more accurately reflect model (e.g.
getPlatform(String)now returns aJpaPlatform, whilegetJpaPlatformDescription(String)returns theJpaPlatformDescription)
- no longer a singleton - access it via
- added method
JpaPlatform.getContentType(IFile)
-
ConnectionProfileFactoryis no longer a singleton - access it viaJpaWorkspace
-
PersistenceUnitadded methodremoveSpecifiedClassRefs(Iterable<ClassRef>)
-
JpaProject- changed
getMappedJavaSourceClassNames(): Iterable<String>togetPotentialJavaSourceTypes() : Iterable<JavaResourceAbstractType> - changed
getAnnotatedJavaSourceClassNames(): Iterable<String>togetAnnotatedJavaSourceTypes() : Iterable<JavaResourceAbstractType>
- changed
- reworked
JpaProject.Manager- added
getJpaWorkspace() - removed
log(String) - removed
log(Throwable) - removed
log(String, Throwable) - removed
getExceptionHandler()
- added
-
JpaProjectManager- renamed
-
addAsyncEventListenerFlag(BooleanReference)toaddJavaEventListenerFlag(BooleanReference) -
removeAsyncEventListenerFlag(BooleanReference)toremoveJavaEventListenerFlag(BooleanReference)
-
- renamed
-
JpaPlatformProvider- removed
getMostRecentSupportedResourceType(IContentType) - added
getMostRecentSupportedResourceTypes()
- removed
-
PersistentType- added
getAttributeTypeBinding(ReadOnlyPersistentAttribute)
- added
-
ReadOnlyPersistentAttribute- added
getTypeName(PersistentType)
- added
-
Generator- refactored all DB specific methods to a new interfaceDbGeneratorbug 380150
- added interface
JavaElementReference- implemented by:-
JavaPersistentType -
JavaPersistentAttribute -
Accessor
-
- cleaned up how
JpaFileroot structure nodes are registered Bug 231872:- added
JpaFile.updateRootStructureNodes() - removed
JpaFile.addRootStructureNode(Object, JpaStructureNode) - removed
JpaFile.removeRootStructureNode(Object, JpaStructureNode) - added
JpaStructureNode.gatherRootStructureNodes(JpaFile, Collection<JpaStructureNode>)
- added
- fixed Structure View when static member types present Bug 390616:
- added
JpaStructureNodes.getFullTextRange() - renamed
EntityMappings.getFullyQualifiedName(...)toqualify(...)
- added
- reworked
JpaPlatform-related classes:- renamed
JpaPlatformDescriptiontoJpaPlatform.Config - renamed
JpaPlatformGroupDescriptiontoJpaPlatform.GroupConfig - added method
JpaPlatform.Config.getJpaPlatform()
- renamed
-
JpaProject2_0no longer extendsMetamodelSynchronizer- that behavior should be internal to theJpaProject
-
JpaXmlResource- moved/renamed to *.common.core.JptXmlResource.
- added method
ClassRef.getJavaResourceType()
- added method
Entity.supportsValidationMessages()andEntity.getNameTextRange() - added method
Generator.supportsValidationMessages() - added method
Query.supportsValidationMessages()
- Refactored validation methods to not include a CompilationUnit for Java(bug 376595). Now the API is the same for Java and Orm.
- added
JpaContextNode.getValidationTextRange() - added
JpaContextNode.validate(...) - Refactored completion proposal methods to be identical in xml and java and moved up the hierarchy, removed Filter and CompilationUnit parameters in both JPA and JAXB
- added
JpaContextNode.getCompletionProposals(...)
- added
- Deleted
JavaJpaContextNodeandXmlContextNodeas they were no longer needed after the validation and context assist refactorings. - Deleted many other Java and Xml specific interfaces. For example, JavaMultiRelationshipMapping and XmlMultiRelationshipMapping were deleted, use MultiRelationshipMapping now.
- added
- The refactoring participant methods have been refactored
- The common methods have been consolidated into the following interfaces:
-
DeleteTypeRefactoringParticipant -
MappingFileRefactoringParticipant -
TypeRefactoringParticipant
-
- The following interfaces now extend one or more of the above-listed interfaces:
-
EntityMappings -
OrmAttributeMapping -
OrmIdClassReference -
OrmPersistentAttribute -
OrmPersistentType -
OrmTypeMapping -
ClassRef -
MappingFileRef -
PersistenceUnit -
PersistenceUnitProperties
-
- The common methods have been consolidated into the following interfaces:
-
PersistentType2_0- added method
getMetamodelType()
- added method
-
JarFile- removed method
dispose()
- removed method
- removed
JpaStructureNode.dispose(). Now onlyEntityMappings, OrmPersistentType, OrmReadOnlyPersistentAttribute, MappingFileRef, Persistence, PersistenceUnithave thedispose()method. -
MappingFile,XmlFile,JarFilenow extendJpaContextNodenotJpaStructureNode - added
JpaStructureNode.getChildren(), getChildrenSize()which is used for displaying nodes in theJpaStructureView
-
JavaPersistentAttribute.contains(int),OrmAttributeMapping.contains(int), <code>OrmPersistentType.contains(int),OrmReadOnlyPersistentAttribute.contains(int) replaced with <code>JpaStructureNode.containsOffset(int)
- Support JPA 2.1 Converter types (bug 392702):
- added
ManagedType,JavaManagedType,OrmManagedType -
PersistentTypenow extendsManagedType, moved some type/name related methods to it - added
JavaManagedTypeDefinition - added
OrmManagedTypeDefinition - added method
JpaPlatform.getJavaManagedTypeDefinitions() - added method
JpaPlatformProvider.getJavaManagedTypeDefinitions() - added method
JpaProject.getManagedTypeAnnotationNames() -
JarFile- renamed
getJavaPersistentTypes()togetJavaManagedTypes() - renamed
getJavaPersistentTypesSize()togetJavaManagedTypesSize()
- renamed
-
EntityMappings- replaced
removePersistentType(...)withremoveManagedType(...) - replaced
containsPersistentType(...)withcontainsManagedType(...) - replaced
PERSISTENT_TYPES_LISTwithMANAGED_TYPES_LIST(...) - replaced
getPersistentTypesSize()withgetManagedTypesSize()
- replaced
- replaced
OrmPersistentType.JAVA_PERSISTENT_TYPE_PROPERTYwithOrmManagedType.JAVA_MANAGED_TYPE_PROPERTY - possibly want to use
OrmManagedType.getJavaManagedType()instead ofOrmPersistent.getJavaPersistentType()that is now just a helper method for returning theJavaManagedTypeof it is of typeJavaPersistentType -
OrmTypeMapping-
getClass_()andsetClass(...)andgetClassTextRange()moved toOrmManagedType - remove
createDeleteEdit()- OrmManagedType.createDeleteTypeEdits(...) used instead
-
- added method
OrmXmlDefinition.getManagedTypeDefinition(...) - changed
ClassRef- added method
getJavaManagedType() - renamed
JAVA_PERSISTENT_TYPE_PROPERTYtoJAVA_MANAGED_TYPE_PROPERTY
- added method
- added interface
ManagedTypeContainerandPersistentTypeContainernow extends this. - renamed method
PersistenceUnit.specifiesPersistentType(String)tospecifiesManagedType() - created new interfaces:
-
ConverterType2_1 -
EntityMappings2_1 -
ConverterType2_1 -
OrmXml2_1ContextNodeFactory2_1 -
JpaFactory2_1
-
- added
- renamed
AccessHoldertoAccessReference
- renamed
[Java/Orm]CacheableHolder2_0to[Java/Orm]CacheableReference2_0
- renamed
[Java/Orm]CacheableHolder2_0to[Java/Orm]CacheableReference2_0
- renamed
OrphanRemovalHolder2_0to[Java/Orm]OrphanRemovalMapping2_0
- renamed
Connection2_0toJpaConnection2_0
- renamed
JpaOptions2_0toOptions2_0
- renamed
SharedCacheModetoSharedCacheMode2_0
- renamed
ValidationModetoValidationMode2_0
- renamed
MetamodelSynchronizertoJpaMetamodelSynchronizer2_0
- renamed
ResourceDefinitiontoJpaResourceDefinition
- renamed
JpaNodetoJpaModel
- renamed
JpaContextNodetoJpaContextModel
- renamed
JpaRootContextNodetoJpaContextModelRoot
- renamed
JpaNamedContextNodetoJpaNamedContextModel
- moved JPA 2.0- and 2.1-specific methods from
PersistenceXmlContextModelFactoryto appropriate sub-interfaces:PersistenceXmlContextModelFactory2_0andPersistenceXmlContextModelFactory2_1
- added method
PersistenceUnit.addPersistentTypes(...)to support adding persistent types from a wizard
- renamed
PersistenceXmlContextNodeFactorytoPersistenceXmlContextModelFactoryand corresponding methodsPersistenceXmlDefinition.getResourceNodeFactory()togetResourceModelFactory()andPersistenceXmlDefinition.getContextNodeFactory()togetContextModelFactory()
- renamed
OrmXmlContextNodeFactorytoOrmXmlContextModelFactoryand corresponding methodsOrmXmlDefinition.getResourceNodeFactory()togetResourceModelFactory()andOrmXmlDefinition.getContextNodeFactory()togetContextModelFactory()
- renamed
[Java/Orm]GeneratedValueHolderto[Java/Orm]GeneratedValueMapping
- In a particularly painful (for adopters) change, the various pairs and triplets of interfaces named after the pattern:
-
ReadOnlyFoo -
Foo -
VirtualFoo
-
- where
FooandVirtualFoowere subclasses ofReadOnlyFoo, the interfaces were renamed after the pattern:-
Foo -
SpecifiedFoo -
VirtualFoo
-
- where
SpecifiedFooandVirtualFooare subclasses ofFoo:
| Old | New |
|---|---|
| [Orm]ReadOnlyPersistentAttribute[2_0] [Java/Orm]PersistentAttribute[2_0] |
[Orm]PersistentAttribute[2_0] [Java/Orm]SpecifiedPersistentAttribute[2_0] |
| ReadOnlyAccessHolder AccessHolder |
AccessReference SpecifiedAccessReference |
| ReadOnlyNamedColumn [Java/Orm]NamedColumn VirtualNamedColumn |
NamedColumn [Java/Orm]SpecifiedNamedColumn VirtualNamedColumn |
| ReadOnlyBaseJoinColumn [Java/Orm]BaseJoinColumn VirtualBaseJoinColumn |
BaseJoinColumn [Java/Orm]SpecifiedBaseJoinColumn VirtualBaseJoinColumn |
| ReadOnlyJoinColumn [Java/Orm]JoinColumn VirtualJoinColumn |
JoinColumn [Java/Orm]SpecifiedJoinColumn VirtualJoinColumn |
| ReadOnlyPrimaryKeyJoinColumn [Java/Orm]PrimaryKeyJoinColumn [Orm]VirtualPrimaryKeyJoinColumn |
PrimaryKeyJoinColumn [Java/Orm]SpecifiedPrimaryKeyJoinColumn [Orm]VirtualPrimaryKeyJoinColumn |
| ReadOnlyNamedDiscriminatorColumn NamedDiscriminatorColumn VirtualNamedDiscriminatorColumn |
NamedDiscriminatorColumn SpecifiedNamedDiscriminatorColumn VirtualNamedDiscriminatorColumn |
| [Java/Orm]ReadOnlyDiscriminatorColumn [Java/Orm]DiscriminatorColumn |
[Java/Orm]DiscriminatorColumn [Java/Orm]SpecifiedDiscriminatorColumn |
| [Java/Orm]OrderColumn2_0 | [Java/Orm]SpecifiedOrderColumn2_0 |
| ReadOnlyTableColumn TableColumn VirtualTableColumn |
TableColumn SpecifiedTableColumn VirtualTableColumn |
| ReadOnlyBaseColumn [Java/Orm]BaseColumn VirtualBaseColumn |
BaseColumn [Java/Orm]SpecifiedBaseColumn VirtualBaseColumn |
| ReadOnlyColumn [Java/Orm]Column VirtualColumn |
Column [Java/Orm]SpecifiedColumn VirtualColumn |
| ReadOnlyOverride [Java/Orm]Override_ VirtualOverride |
Override_ [Java/Orm]SpecifiedOverride VirtualOverride |
| ReadOnlyAssociationOverride[2_0] [Java/Orm]AssociationOverride[2_0] [Java/Orm]VirtualAssociationOverride |
AssociationOverride[2_0] [Java/Orm]SpecifiedAssociationOverride[2_0] [Java/Orm]VirtualAssociationOverride |
| ReadOnlyAttributeOverride [Java/Orm]AttributeOverride [Java/Orm]VirtualAttributeOverride |
AttributeOverride [Java/Orm]SpecifiedAttributeOverride [Java/Orm]VirtualAttributeOverride |
| ReadOnlyRelationship Relationship VirtualRelationship |
Relationship SpecifiedRelationship VirtualRelationship |
| ReadOnlyJoinColumnRelationship JoinColumnRelationship VirtualJoinColumnRelationship |
JoinColumnRelationship SpecifiedJoinColumnRelationship VirtualJoinColumnRelationship |
| ReadOnlyJoinTableRelationship JoinTableRelationship VirtualJoinTableRelationship |
JoinTableRelationship SpecifiedJoinTableRelationship VirtualJoinTableRelationship |
| [Java/Orm]ReadOnlyOverrideRelationship[2_0] [Java/Orm]OverrideRelationship[2_0] [Java/Orm]VirtualOverrideRelationship[2_0] |
[Java/Orm]OverrideRelationship[2_0] [Java/Orm]SpecifiedOverrideRelationship[2_0] [Java/Orm]VirtualOverrideRelationship[2_0] |
| ReadOnlyRelationshipStrategy RelationshipStrategy VirtualRelationshipStrategy |
RelationshipStrategy SpecifiedRelationshipStrategy VirtualRelationshipStrategy |
| ReadOnlyJoinColumnRelationshipStrategy [Java/Orm]JoinColumnRelationshipStrategy VirtualJoinColumnRelationshipStrategy |
JoinColumnRelationshipStrategy [Java/Orm]SpecifiedJoinColumnRelationshipStrategy VirtualJoinColumnRelationshipStrategy |
| ReadOnlyJoinTableRelationshipStrategy [Java/Orm]JoinTableRelationshipStrategy VirtualJoinTableRelationshipStrategy |
JoinTableRelationshipStrategy [Java/Orm]SpecifiedJoinTableRelationshipStrategy VirtualJoinTableRelationshipStrategy |
| MappedByRelationshipStrategy | SpecifiedMappedByRelationshipStrategy |
| ReadOnlyTable Table VirtualTable |
Table SpecifiedTable VirtualTable |
| ReadOnlyReferenceTable [Java/Orm]ReferenceTable VirtualReferenceTable |
ReferenceTable [Java/Orm]SpecifiedReferenceTable VirtualReferenceTable |
| ReadOnlyJoinTable [Java/Orm]JoinTable VirtualJoinTable |
JoinTable [Java/Orm]SpecifiedJoinTable VirtualJoinTable |
| ReadOnlySecondaryTable [Java/Orm]SecondaryTable VirtualSecondaryTable |
SecondaryTable [Java/Orm]SpecifiedSecondaryTable VirtualSecondaryTable |
| ReadOnlyUniqueConstraint [Java/Orm]UniqueConstraint VirtualUniqueConstraint |
UniqueConstraint [Java/Orm]SpecifiedUniqueConstraint VirtualUniqueConstraint |
- Various
Ownerinterfaces were renamed to the corresponding interfaceParentAdapterand refactored to return the client's parent; so, instead of constructing a client with both a parent and an owner, the client is constructed with only a parent adapter. The appropriate factory methods were changed accordingly:
| Old | New |
|---|---|
| [Java/Orm]OverrideContainer.Owner | [Java/Orm]OverrideContainer.ParentAdapter |
| [Java/Orm]AssociationOverrideContainer.Owner | [Java/Orm]AssociationOverrideContainer.ParentAdapter |
| [Java/Orm]AttributeOverrideContainer.Owner | [Java/Orm]AttributeOverrideContainer.ParentAdapter |
| [Java/Orm]Converter.Owner | [Java/Orm]Converter.ParentAdapter |
| OrmBaseEnumeratedConverter.Owner | OrmBaseEnumeratedConverter.ParentAdapter |
| OrmBaseTemporalConverter.Owner | OrmBaseTemporalConverter.ParentAdapter |
| JavaQueryContainer.Owner | JavaQueryContainer.ParentAdapter |
| [Java/Orm]ReadOnlyTable.Owner | [Java/Orm]Table.ParentAdapter |
| [Java/Orm]ReadOnlyCollectionTable2_0.Owner | [Java/Orm]CollectionTable2_0.ParentAdapter |
| [Java/Orm]JoinTable.Owner | [Java/Orm]SpecifiedJoinTable.ParentAdapter |
| [Java/Orm]SecondaryTable.Owner | [Java/Orm]SpecifiedSecondaryTable.ParentAdapter |
| OrmVirtualSecondaryTable.Owner | OrmVirtualSecondaryTable.ParentAdapter |
| VirtualJoinTable.Owner | VirtualJoinTable.ParentAdapter |
| ReadOnlyNamedColumn.Owner | NamedColumn.ParentAdapter |
| ReadOnlyTableColumn.Owner | TableColumn.ParentAdapter |
| ReadOnlyBaseJoinColumn.Owner | BaseJoinColumn.ParentAdapter |
| ReadOnlyJoinColumn.Owner | JoinColumn.ParentAdapter |
| [Java/Orm]Column.Owner | [Java/Orm]SpecifiedColumn.ParentAdapter |
| [Jave/Orm]OrderColumn2_0.Owner | [Jave/Orm]SpecifiedOrderColumn2_0.ParentAdapter |
| ReadOnlyNamedDiscriminatorColumn.Owner | NamedDiscriminatorColumn.ParentAdapter |
| [Jave/Orm]DiscriminatorColumn.Owner | [Jave/Orm]SpecifiedDiscriminatorColumn.ParentAdapter |
| VirtualColumn.Owner | VirtualColumn.ParentAdapter |
| [Jave/Orm]Orderable2_0.Owner | [Jave/Orm]Orderable2_0.ParentAdapter |
- Remove the functionality that creates an orm.xml file during project creation (bug 403131):
- Removed
JpaFacetInstallDataModelProperties.CREATE_ORM_XML - Removed
JpaFacetInstallDelegate.createOrmXml(...) - Changed
JpaFacetInstallDelegate.createProjectXml(...)to only create persistence.xml
- Removed
JAXB Core (Provisional API)
-
JptJaxbCorePlugin- moved to private package and moved its members to the appropriate public interfaces etc.
| Old | New |
|---|---|
| JAXB_INDEX_CONTENT_TYPE | JaxbIndexResource.CONTENT_TYPE |
| JAXB_INDEX_RESOURCE_TYPE | JaxbIndexResource.RESOURCE_TYPE |
| JAXB_PROPERTIES_CONTENT_TYPE | JaxbPropertiesResource.CONTENT_TYPE |
| JAXB_PROPERTIES_RESOURCE_TYPE | JaxbPropertiesResource.RESOURCE_TYPE |
| VALIDATION_MARKER_ID | JaxbValidator.MARKER_ID |
- added
JaxbWorkspace
- added
JaxbPreferences
- renamed
JaxbPlatformDescriptiontoJaxbPlatformConfig
- renamed
JaxbPlatformGroupDescriptiontoJaxbPlatformGroupConfig
- removed
GenericJaxbPlatformand scattered its constants to variousJaxbPlatformDefinitionimplementations
- removed
JaxbFacetand moved its constants toJaxbProject
EclipseLink JPA Core (Provisional API)
-
JptJpaEclipseLinkCorePlugin- moved to private package and moved its members to the appropriate public interfaces etc.
| Old | New |
|---|---|
| DEFAULT_ECLIPSELINK_ORM_XML_RUNTIME_PATH | XmlEntityMappings.DEFAULT_RUNTIME_PATH |
| ECLIPSELINK_ORM_XML_CONTENT_TYPE | XmlEntityMappings.CONTENT_TYPE |
| ECLIPSELINK_ORM_XML_1_0_RESOURCE_TYPE | XmlEntityMappings.RESOURCE_TYPE_1_0 |
| ECLIPSELINK_ORM_XML_1_1_RESOURCE_TYPE | XmlEntityMappings.RESOURCE_TYPE_1_1 |
| ECLIPSELINK_ORM_XML_1_2_RESOURCE_TYPE | XmlEntityMappings.RESOURCE_TYPE_1_2 |
| ECLIPSELINK_ORM_XML_2_0_RESOURCE_TYPE | XmlEntityMappings.RESOURCE_TYPE_2_0 |
| ECLIPSELINK_ORM_XML_2_1_RESOURCE_TYPE | XmlEntityMappings.RESOURCE_TYPE_2_1 |
| ECLIPSELINK_ORM_XML_2_2_RESOURCE_TYPE | XmlEntityMappings.RESOURCE_TYPE_2_2 |
| ECLIPSELINK_ORM_XML_2_3_RESOURCE_TYPE | XmlEntityMappings.RESOURCE_TYPE_2_3 |
| ECLIPSELINK_ORM_XML_2_4_RESOURCE_TYPE | XmlEntityMappings.RESOURCE_TYPE_2_4 |
| ECLIPSELINK_PLATFORM_VERSION_1_0 | EclipseLinkJpaPlatformFactory.VERSION |
| ECLIPSELINK_PLATFORM_VERSION_1_1 | EclipseLink1_1JpaPlatformFactory.VERSION |
| ECLIPSELINK_PLATFORM_VERSION_1_2 | EclipseLink1_2JpaPlatformFactory.VERSION |
| ECLIPSELINK_PLATFORM_VERSION_2_0 | EclipseLink2_0JpaPlatformFactory.VERSION |
| ECLIPSELINK_PLATFORM_VERSION_2_1 | EclipseLink2_1JpaPlatformFactory.VERSION |
| ECLIPSELINK_PLATFORM_VERSION_2_2 | EclipseLink2_2JpaPlatformFactory.VERSION |
| ECLIPSELINK_PLATFORM_VERSION_2_3 | EclipseLink2_3JpaPlatformFactory.VERSION |
| ECLIPSELINK_PLATFORM_VERSION_2_4 | EclipseLink2_4JpaPlatformFactory.VERSION |
| nodeIsEclipseLink2_3Compatible(...) | removed |
| nodeIsEclipseLink2_4Compatible(...) | removed |
| nodeIsEclipseLinkVersionCompatible(...) | removed |
- moved preference code to new facade
EclipseLinkJpaPreferences
- removed
EclipseLinkPlatformand scattered its constants to variousJpaPlatformFactoryimplementations
EclipseLink JAXB Core (Provisional API)
- removed
ELJaxbPlatformand scattered its constants to variousJaxbPlatformDefinitionimplementations
Common UI (Provisional API)
-
WidgetFactory:- removed deprecated
createCCombo(...) - removed deprecated
createEditableCCombo(...) - removed
createMultiLineLabel(...) - added
dispose()- must be called when finished with the widget factory
- removed deprecated
-
ItemLabelProvider.Manager:- added
getResourceManager()
- added
- added
JptCommonUiImages
- Various
ProviderFactorytop-level interfaces were converted to member interfaces:
| Old | New |
|---|---|
| ItemExtendedLabelProviderFactory | ItemExtendedLabelProvider.Factory |
| ItemLabelProviderFactory | ItemLabelProvider.Factory |
| ItemStructuredContentProviderFactory | ItemStructuredContentProvider.Factory |
| ItemTreeContentProviderFactory | ItemTreeContentProvider.Factory |
JPA UI (Provisional API)
- enhanced
JpaPlatformUi:- added
getTypeMappingUiDefinition(...) - added
getAttributeMappingUiDefinition(...) - added parameters
PropertyValueModel<Boolean> enabledModelandResourceManager resourceManagertobuildTypeMappingComposite(...) - added parameters
PropertyValueModel<Boolean> enabledModelandResourceManager resourceManagertobuildAttributeMappingComposite(...) - changed
buildJpaDetailsManager(...)togetDetailsProvider(JpaStructureNode)
- added
- converted
Iterators toIterables:-
JpaPlatformUi.getTypeMappingUiDefinitions(...) -
JpaPlatformUi.getAttributeMappingUiDefinitions(...) -
JpaPlatformUiProvider.getDetailsProviders() -
JpaPlatformUiProvider.getResourceUiDefinitions() -
MappingResourceUiDefinition.getTypeMappingUiDefinitions() -
MappingResourceUiDefinition.getAttributeMappingUiDefinitions()
-
- enhanced
JpaPlatformUiProvider:- moved
getDetailsProviders()toResourceUiDefinition
- moved
- enhanced
ResourceUiDefinition:- added
getEditorPageDefinitions() - moved
getDetailsProviders()fromJpaPlatformUiProvider
- added
- enhanced
MappingResourceUiDefinition:- added
getTypeMappingUiDefinition(...) - added
getTypeMappingUiDeginitions(PersistentType) - added
getAttributeMappingUiDefinition(...) - added
getAttributeMappingUiDefinitions(ReadOnlyPersistentAttribute) - added parameters
PropertyValueModel<Boolean> enabledModelandResourceManager resourceManagertobuildAttributeMappingComposite(...) - added parameter
ResourceManager resourceManagertobuildTypeMappingComposite(...)
- added
- enhanced
MappingUiDefinition:- ungenericized this interface
- changed
getImage()togetImageDescriptor() - added method
buildMappingComposite(), this replaced similar methods inJavaTypeMappingUiDefinitionandJavaAttributeMappingUiDefinition. added parametersPropertyValueModel<Boolean> enabledModelandResourceManager resourceManager
- deleted
JavaTypeMappingUiDefinition- seeMappingUiDefinition - deleted
JavaAttributeMappingUiDefinition- seeMappingUiDefinition - deleted
DefaultJavaTypeMappingUiDefinition- seeMappingUiDefinition - deleted
DefaultJavaAttributeMappingUiDefinition- seeMappingUiDefinition - deleted
OrmTypeMappingUiDefinition- seeMappingUiDefinition - deleted
OrmAttributeMappingUiDefinition- seeMappingUiDefinition - deleted
JavaUiFactory- seeJpaUiFactory - deleted
OrmXmlUiFactory- seeJpaUiFactory - deleted
JavaUiFactory2_0- seeJpaUiFactory2_0 - deleted
OrmXmlUiFactory2_0- seeJpaUiFactory2_0
- added
JpaUiFactoryandJpaUiFactory2_0- methods from deleted classes
JavaUiFactoryOrmXmlUiFactorywere renamed to be not specific to orm/java, iecreateEntityComposite(...)replacedcreateJavaEntityComposite(...) - added parameters
PropertyValueModel<Boolean> enabledModelandResourceManager resourceManagerto all attribute and type mapping methods - removed vestigial ORM type mapping methods:
-
createOrmMappedSuperclassComposite(...) -
createOrmEntityComposite(...) -
createOrmEmbeddableComposite(...)
-
- methods from deleted classes
- enhanced
JpaComposite- removed
enableWidgets(boolean)- aPanenow takes aPropertyValueModel<Boolean>used for enabling widgets
- removed
- moved
JpaPageCompositefromorg.eclipse.jpt.jpa.ui.detailstoorg.eclipse.jpa.ui.editorsand renamed it toJpaEditorPageDefinition- no longer extends
JpaComposite - renamed
getPageImageDescriptor()togetTitleImageDescriptor() - renamed
getPageText()togetTitleText() - added
buildContent(...)
- no longer extends
- enhanced
JpaDetailsPageManager:- ungenericized this interface.
-
getSubject()now returnsJpaStructureNode -
setSubject(...)now takes aJpaStructureNodeparameter
- enhanced
JpaDetailsPageManager.Factory:- added parameter
ResourceManager resourceManagertobuildPageManager(...)
- added parameter
- enhanced
JpaDetailsProvider:- added parameter
ResourceManager resourceManagertobuildDetailsPageManager(...) - replaced method
providesDetails(JpaStructureNode>)withgetType()
- added parameter
- added
JpaWorkbench
- added
JpaPlatformUiManager
- added
JptJpaUiImages
- added
PersistenceResourceUiDefinitionthat any ResourceUiDefinition for a persistence.xml file needs to implement
- removed the functionality that creates an orm.xml file during project creation (bug 392222):
- removed
JpaFacetInstallPage.OrmXmlGroup
- removed
JPQL Query (content assist and validation) (Provisional API)
-
SourceAnnotation,ASTTools- Added support for retrieving a list of text ranges when the value is split.
-
Query,QueryAnnotation,XmlQuery- Changed "
TextRange getTextRange()" to "List<TextRange> getTextRanges()" to support a JPQL query split into multiple sections (see bug 386414).
- Changed "
-
XmlQuery- Added 3 methods (
getActualQuery(),getQueryOffset(),isQueryInsideCDATASection()) to help fix alignment issue of content assist and validation text range (also see bug 360713).
- Added 3 methods (
-
JpaJpqlQueryHelper, changed the signature of validate() to better support content assist and validation due to:- Split strings in a Java annotation;
- Inside a CDATA section in XML;
- Contains leading whitespace between
<query>element and the query itself in XML.
JAXB UI (Provisional API)
-
JptJaxbUiPlugin- moved to private package and moved its members to the appropriate public interfaces etc.
| Old | New |
|---|---|
| getJaxbPlatformUiManager() | TO DO |
- added
JaxbWorkbench
- added
JptJaxbUiImages
Reference
This document covers ONLY changes between WTP 3.5 and WTP 3.4. See also: