Eclipse Test & Performance Tools Platform Project

 Architecture document

Deprecated Resources Removed in TPTP v4.0

Title:

Deprecated Resources Removed in TPTP v4.0

Author:

Paul Slauenwhite (paules@ca.ibm.com)

Version:

July 5, 2005

Creation date:

July 5, 2005

 

Contents:

 

  1. Introduction
  2. Platform.Execution.CBE/Logging
  3. References

 

Introduction:

           

This document details the deprecated public resources proposed that have been removed in the Test and Performance Tools Platform (TPTP) v4.0 release.  Resources include:

 

         Classes

         Methods

         Variables

 

The list of deprecated public resources that have been removed in the TPTP v4.0 release is organized based on components within the TPTP component matrix (see References). Explanation is provided for why deprecated public resources have been removed in the TPTP v4.0 release. Finally, where applicable, substitute public resources are provided as a porting guide for current users of previous releases with deprecated public resources that have been removed in the TPTP v4.0 release.

 

Platform.Execution.CBE/Logging

 

The Hyades project - predecessor of the TPTP project - contained a non-EMF Java implementation of the Common Base Event v1.0.1 specification. This code was the first producer implementation of the Common Base Event v1.0.1 specification in the Hyades project. All classes in the implementation were contained in the org.eclipse.hyades.logging.core plug-in and packaged in the hlevents.jar. Beginning in Hyades v1.3.0, this implementation of the Common Base Event v1.0.1 specification was replaced by an EMF-based Java implementation contained in the org.eclipse.hyades.logging.core plug-in and packaged in the hlcbe101.jar. As such, the older non-EMF Java implementation of the Common Base Event v1.0.1 specification was deprecated in Hyades v1.3.0. Moving forward, a new non-EMF Common Base Event implementation based on the existing EMF-based Java implementation has been provided in TPTP v4.0 (see References). The new non-EMF Common Base Event v1.0.1 Java implementation is contained in the org.eclipse.hyades.logging.core plug-in and packaged in the tlcbe101.jar . The deprecated classes in the older non-EMF Java implementation of the Common Base Event v1.0.1 specification that have been removed in the TPTP v4.0 release include:

 

                              org.eclipse.hyades.logging.events.AssociatedEventImpl.java

                              org.eclipse.hyades.logging.events.AssociationEngineImpl.java

                              org.eclipse.hyades.logging.events.AvailableSituationImpl.java

                              org.eclipse.hyades.logging.events.CbeFormatter.java

                              org.eclipse.hyades.logging.events.CommonBaseEventAnyElementImpl.java

                              org.eclipse.hyades.logging.events.CommonBaseEventFactory.java

                              org.eclipse.hyades.logging.events.CommonBaseEventImpl.java

                              org.eclipse.hyades.logging.events.ComponentIdentificationImpl.java

                              org.eclipse.hyades.logging.events.ConfigureSituationImpl.java

                              org.eclipse.hyades.logging.events.ConnectSituationImpl.java

                              org.eclipse.hyades.logging.events.ContextDataElementImpl.java

                              org.eclipse.hyades.logging.events.CreateSituationImpl.java

                              org.eclipse.hyades.logging.events.DependencySituationImpl.java

                              org.eclipse.hyades.logging.events.DestroySituationImpl.java

                              org.eclipse.hyades.logging.events.EventFactoryHome.java

                              org.eclipse.hyades.logging.events.EventItemsFactory.java

                              org.eclipse.hyades.logging.events.ExtendedDataElementImpl.java

                              org.eclipse.hyades.logging.events.FeatureSituationImpl.java

                              org.eclipse.hyades.logging.events.IAssociatedEvent.java

                              org.eclipse.hyades.logging.events.IAssociationEngine.java

                              org.eclipse.hyades.logging.events.IAvailableSituation.java

                              org.eclipse.hyades.logging.events.ICommonBaseEvent.java

                              org.eclipse.hyades.logging.events.ICommonBaseEventAnyElement.java

                              org.eclipse.hyades.logging.events.IComponentIdentification.java

                              org.eclipse.hyades.logging.events.IConfigureSituation.java

                              org.eclipse.hyades.logging.events.IConnectSituation.java

                              org.eclipse.hyades.logging.events.IContextDataElement.java

                              org.eclipse.hyades.logging.events.ICreateSituation.java

                              org.eclipse.hyades.logging.events.IDependencySituation.java

                              org.eclipse.hyades.logging.events.IDestroySituation.java

                              org.eclipse.hyades.logging.events.IEventFactory.java

                              org.eclipse.hyades.logging.events.IExtendedDataElement.java

                              org.eclipse.hyades.logging.events.IFeatureSituation.java

                              org.eclipse.hyades.logging.events.IMsgCatalogToken.java

                              org.eclipse.hyades.logging.events.IMsgDataElement.java

                              org.eclipse.hyades.logging.events.IOtherSituation.java

                              org.eclipse.hyades.logging.events.IReportSituation.java

                              org.eclipse.hyades.logging.events.IRequestSituation.java

                              org.eclipse.hyades.logging.events.ISimpleEventFactory.java

                              org.eclipse.hyades.logging.events.ISituation.java

                              org.eclipse.hyades.logging.events.ISituationType.java

                              org.eclipse.hyades.logging.events.IStartSituation.java

                              org.eclipse.hyades.logging.events.IStopSituation.java

                              org.eclipse.hyades.logging.events.MsgCatalogTokenImpl.java

                              org.eclipse.hyades.logging.events.MsgDataElementImpl.java

                              org.eclipse.hyades.logging.events.OtherSituationImpl.java

                              org.eclipse.hyades.logging.events.ReportSituationImpl.java

                              org.eclipse.hyades.logging.events.RequestSituationImpl.java

                              org.eclipse.hyades.logging.events.SimpleEventFactoryImpl.java

                              org.eclipse.hyades.logging.events.SituationImpl.java

                              org.eclipse.hyades.logging.events.SituationTypeImpl.java

                              org.eclipse.hyades.logging.events.StartSituationImpl.java

                              org.eclipse.hyades.logging.events.StopSituationImpl.java

                              org.eclipse.hyades.logging.events.exceptions.CannotCreateEventFactoryException.java

                              org.eclipse.hyades.logging.events.exceptions.ConstrainedValueException.java

                              org.eclipse.hyades.logging.events.exceptions.InvalidExtendedDataElementTypeException.java

                              org.eclipse.hyades.logging.events.exceptions.InvalidXMLAnyElementException.java

                              org.eclipse.hyades.logging.events.exceptions.MissingValueException.java

                              org.eclipse.hyades.logging.events.exceptions.UnsupportedVersionException.java

                              org.eclipse.hyades.logging.events.exceptions.ValueTooLongException.java

 

The EMF-based Java implementation of the Common Base Event v1.0.1 specification contained in the org.eclipse.hyades.logging.core plug-in and packaged in the hlcbe101.jar originally contained java.util.ListResourceBundles classes for translatable resources. In the process of migrating this Java project to a plug-in, the translatable resources were moved to external plugin[_<language code>_<country code>].properties files, as of Hyades v3.0.0. As such, the java.util.ListResourceBundle classes for translatable resources are replaced by the plugin[_<language code>_<country code>].properties files of the org.eclipse.hyades.logging.core plug-in. Finally, the event validation functionality in the EMF-based Java implementation of the Common Base Event v1.0.1 specification originally used the java.util.ListResourceBundles classes for localized validation exception messages. As such, validation exceptions (e.g. ValidationException and MissingPropertyException) are created using the method (e.g. org.eclipse.hyades.logging.events.cbe.util.EventHelpers.getString()) to access the localized validation exception message from the external plugin[_<language code>_<country code>].properties files, as of Hyades v3.0.0. The deprecated classes and methods for translatable resources that have been removed in the TPTP v4.0 release include:

 

                              org.eclipse.hyades.logging.events.cbe.util.EventMessages.java

                              org.eclipse.hyades.logging.events.cbe.util.EventMessages_de.java

                              org.eclipse.hyades.logging.events.cbe.util.EventMessages_es.java

                              org.eclipse.hyades.logging.events.cbe.util.EventMessages_fr.java

                              org.eclipse.hyades.logging.events.cbe.util.EventMessages_it.java

                              org.eclipse.hyades.logging.events.cbe.util.EventMessages_ja.java

                              org.eclipse.hyades.logging.events.cbe.util.EventMessages_ko.java

                              org.eclipse.hyades.logging.events.cbe.util.EventMessages_pt_BR.java

                              org.eclipse.hyades.logging.events.cbe.util.EventMessages_zh_CN.java

                              org.eclipse.hyades.logging.events.cbe.util.EventMessages_zh_TW.java

                              org.eclipse.hyades.logging.events.cbe.util.EventValidation.throwValidationException(String, String, Object[])

                              org.eclipse.hyades.logging.events.cbe.util.EventValidation.throwMissingPropertyException(String, String, Object[])

 

The factory design and implementation for the EMF-based Java implementation in the Common Base Event v1.0.1 specification contained in the org.eclipse.hyades.logging.core plug-in and packaged in the hlcbe101.jar originally contained permission-based security. After evaluating user and industry feedback, the permission-based security was deemed unnecessarily constrictive in multiple user logging facilities (e.g. application server) and replaced by application (e.g. class loaders and namespaces) and operating system (e.g. file management) level security, as of Hyades v3.0.0. The deprecated classes and methods for permission-based security in the factory implementation in the EMF-based Java implementation of the Common Base Event v1.0.1 specification that have been removed in the TPTP v4.0 release include:

 

    org.eclipse.hyades.logging.events.cbe.util.EventPermission.java

     org.eclipse.hyades.logging.events.cbe.EventFactoryHome.checkAccess()

    org.eclipse.hyades.logging.events.cbe.impl.AbstractEventFactoryHome.checkAccess()

 

The factory design and implementation for the EMF-based Java implementation in the Common Base Event v1.0.1 specification contained in the org.eclipse.hyades.logging.core plug-in and packaged in the hlcbe101.jar originally contained a getter method on the org.eclipse.hyades.logging.events.cbe.TemplateContentHandler interface and its implementations. After evaluating user and industry feedback, the getter method on the org.eclipse.hyades.logging.events.cbe.TemplateContentHandler interface and its implementations was deemed insecure and replaced by a singleton setter method, as of Hyades v3.0.0. The deprecated getter methods on the org.eclipse.hyades.logging.events.cbe.TemplateContentHandler interface and its implementations in the factory implementation in the EMF-based Java implementation of the Common Base Event v1.0.1 specification that have been removed in the TPTP v4.0 release include:

 

    org.eclipse.hyades.logging.events.cbe.TemplateContentHandler.getTemplateEvent()

    org.eclipse.hyades.logging.events.cbe.impl.TemplateContentHandler.getTemplateEvent()

 

The factory design and implementation for the EMF-based Java implementation in the Common Base Event v1.0.1 specification contained in the org.eclipse.hyades.logging.core plug-in and packaged in the hlcbe101.jar originally contained an environment variable for the run-time Event Factory Home implementation class specified by the application. After evaluating user and industry feedback, the environment variable for the run-time Event Factory Home implementation class specified by the application was deemed insecure and replaced by a setter method, as of Hyades v3.0.0. The deprecated variable representing the environment variable for the run-time Event Factory Home implementation class specified by the application in the factory implementation in the EMF-based Java implementation of the Common Base Event v1.0.1 specification that has been removed in the TPTP v4.0 release is:

 

    org.eclipse.hyades.logging.events.cbe.impl.EventFactoryContext.EVENT_FACTORY_HOME_TYPE_SYSTEM_PROPERTY

                              

The EMF-based Java implementation of the Common Base Event v1.0.1 specification contained in the org.eclipse.hyades.logging.core plug-in and packaged in the hlcbe101.jar originally contained de-serialization methods to convert a Common Base Event or Association Engine XML fragment (e.g. org.eclipse.hyades.logging.events.cbe.util.EventFormatter.fromCanonicalXMLString(CommonBaseEvent, String) or org.eclipse.hyades.logging.events.cbe.util.EventFormatter.fromCanonicalXMLString(AssociationEngine, String)) or Common Base Event XML document (e.g. org.eclipse.hyades.logging.events.cbe.util.EventFormatter.fromCanonicalXMLDocString(CommonBaseEvent, String) or org.eclipse.hyades.logging.events.cbe.util.EventFormatter.fromCanonicalXMLDocString(AssociationEngine, String)) into a single parameter Common Base Event or Association Engine object. Since a Common Base Event XML document typically contains more than one Common Base Event and/or Association Engine fragment, the method that convert a Common Base Event XML document into a single parameter Common Base Event or Association Engine object were replaced by methods (e.g. org.eclipse.hyades.logging.events.cbe.util.EventFormatter.associationEnginesFromCanonicalXMLDoc(String) and org.eclipse.hyades.logging.events.cbe.util.EventFormatter.eventsFromCanonicalXMLDoc(String)) that return an array of Common Base Event or Association Engine objects, as of Hyades 3.0. Furthermore, to maintain a uniform programming model, the de-serialization methods that converted a Common Base Event or Association Engine XML fragment into a single parameter Common Base Event or Association Engine object where replaced by methods (e.g. org.eclipse.hyades.logging.events.cbe.util.EventFormatter.associationEngineFromCanonicalXML(String) and org.eclipse.hyades.logging.events.cbe.util.EventFormatter.eventFromCanonicalXML(String)) that return a single Common Base Event or Association Engine object, as of Hyades 3.0. The deprecated de-serialization methods to convert a Common Base Event or Association Engine XML fragment or Common Base Event XML document into a single parameter Common Base Event or Association Engine object in the EMF-based Java implementation of the Common Base Event v1.0.1 specification that have been removed in the TPTP v4.0 release include:

 

  org.eclipse.hyades.logging.events.cbe.util.EventFormatter.fromCanonicalXMLDocString(AssociationEngine, String)

  org.eclipse.hyades.logging.events.cbe.util.EventFormatter.fromCanonicalXMLDocString(CommonBaseEvent, String)

  org.eclipse.hyades.logging.events.cbe.util.EventFormatter.fromCanonicalXMLString(AssociationEngine, String)

  org.eclipse.hyades.logging.events.cbe.util.EventFormatter.fromCanonicalXMLString(CommonBaseEvent, String)

 

The EMF-based Java implementation of the Common Base Event v1.0.1 specification contained in the org.eclipse.hyades.logging.core plug-in and packaged in the hlcbe101.jar originally contained a public static lock variable for synchronization by locking the current thread. As of Hyades v3.1, this public static lock variable for synchronization by locking the current thread is replaced by object-level locking for synchronization. The deprecated variable for synchronization by locking the current thread that has been removed in the TPTP v4.0 release is:

 

         org.eclipse.hyades.logging.events.cbe.util.EventHelpers.LOCK

 

The EMF-based Java implementation of the Common Base Event v1.0.1 specification contained in the org.eclipse.hyades.logging.core plug-in and packaged in the hlcbe101.jar originally contained a method to reset the values property (e.g. resetValues()) of the org.eclipse.hyades.logging.events.cbe.impl.ExtendedDataElementImpl class. To maintain a uniform programming model with the other classes in the EMF-based Java implementation of the Common Base Event v1.0.1 specification, this method was replaced by the clearValues() method, as of Hyades v1.3.0. The deprecated method for resetting the values property (e.g. resetValues()) of the org.eclipse.hyades.logging.events.cbe.impl.ExtendedDataElementImpl class that has been removed in the TPTP v4.0 release is:

 

         org.eclipse.hyades.logging.events.cbe.impl.ExtendedDataElementImpl.resetValues()

 

The Hyades project - predecessor of the TPTP project - originally contained a logger interface and implementation for logging XML log records to a Logging Agent. The TPTP project contains Logging Agent support for Jakarta Apache Commons Logging contained in the org.eclipse.hyades.logging.commons plug-in and packaged in the hlcommons.jar, Jakarta Apache Log4J Logging contained in the org.eclipse.hyades.logging.log4j plug-in and packaged in the hllog4j.jar and Java Logging contained in the org.eclipse.hyades.logging.java14 plug-in and packaged in the hl14.jar. As such, the original logger interface and implementation for logging XML log records to a Logging Agent has become dated and replaced by the Logging Agent support for Apache Commons, Apache Log4j and Java Logging, as of Hyades v3.0.0. The deprecated logger interface and implementation class for logging XML log records to a Logging Agent that have been removed in the TPTP v4.0 release include:

 

         org.eclipse.hyades.logging.core.XmlLogger.java

         org.eclipse.hyades.logging.core.ILogger.java

  

References:

 

[1] Eclipse Modeling Framework Project, http://www.eclipse.org/emf.

 

[2] Eclipse Project, http://www.eclipse.org/.

 

[3] Non-EMF Common Base Event Implementation, https://bugs.eclipse.org/bugs/show_bug.cgi?id=83551.

 

[4] TPTP Project, http://www.eclipse.org/tptp.

 

[5] TPTP Project Matrix, http://www.eclipse.org/tptp/home/project_info/structure/TPTP_Project_Matrix.html.