Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [hyades-dev] Updates to CBE

Jason,

Thanks for your contribution.  I have reviewed the changes you have
suggested and generally they are OK.  I do have a few things that we need
to resolve before I bring these forward.  Let me raise these file by file.

CbeFormatter
I am OK with the changes here.  There are no side effects with these
changes and it adds the ability to support the schema painlessly using Date
objects.

ICommonBaseEvent
There are no breaking changes on the interface and I see the value of the
addition of setCreationTimeLong( ) and getCreationTimeLong( ).

CommonBaseEventImpl
I have an issue with the changed behaviour of the setCreationTime( ) and
the getCreationTime( ) API's.  We still need to support these as some
parsers will be creating the schema date directly when they are reading
historical data.  This is broken in your changes.  Ideally we should be
able to support any permutation of the creationTime getters/setters.

IExtendedDataElement
I'm Ok with the changes here.   One minor statement.   All of the fields
you have added to the interface are declared as 'public final'.  According
to the Java language specification all fields in an interface are
implicitly 'public static final'.  I'm not sure what the Eclipse coding
guideline is but generally I believe that maximum explicity is best.

ExtendedDataElementImpl
I'm a little concerned about how we are handling the various types in the
impl.

1.  The constructors.  I am OK with the addition of the optimized
constructors for the various data types.  But I don't feel they are
complete.  For instance, how do we intend to resolve the differences
between String and dateTime, dataArray, and durationArray.   My personal
oppinion is that this could best be abstracted into a factory and get rid
of the constructors that are not part of the interface.  We need to discuss
this.  Perhaps the Wednesday call we  have would be a good venue for this.

2.  The setValues( ) impl looks like it would throw a NullPointerException
if the type was not set prior to the call.

3.  We need to move the hard coded strings for the exception information to
a resource file.

There may be other potential bugs.  I just did a quick overview for
breaking changes.  Resolution of the CommonBaseEventImpl behaviour changes
will be necessary before commiting this code.  The majority of the
ExtendedDataElementImpl code is OK as well.  We just need to look at this a
little closer.


Richard K. Duggan
Problem Determination Enablement
IBM Toronto Laboratory
External: 905-413-2396
Internal: 969-2396



|---------+---------------------------->
|         |           Jason            |
|         |           Cornpropst/Raleig|
|         |           h/IBM@IBMUS      |
|         |           Sent by:         |
|         |           hyades-dev-admin@|
|         |           eclipse.org      |
|         |                            |
|         |                            |
|         |           05/05/2003 01:14 |
|         |           PM               |
|         |           Please respond to|
|         |           hyades-dev       |
|         |                            |
|---------+---------------------------->
  >---------------------------------------------------------------------------------------------------------------------------------------------|
  |                                                                                                                                             |
  |       To:       hyades-dev@xxxxxxxxxxx                                                                                                      |
  |       cc:       Richard Duggan/Toronto/IBM@IBMCA                                                                                            |
  |       Subject:  [hyades-dev] Updates to CBE                                                                                                 |
  |                                                                                                                                             |
  |                                                                                                                                             |
  >---------------------------------------------------------------------------------------------------------------------------------------------|





Here are proposed updates to the CBE object in the
org.eclipse.hyades.logging.events package. There are 2 main changes.
1- The data in IExtendedDataElements is now typed. Instead of returning
String the data is returned as the native types. If the wrong get or set
method is called a runime exception is thrown. There are also now numeric
values assigned to the different datatypes so that the a case statement can
be used when processing extended data elements. There is one possible issue
with backward compatability. The data type must be set before setting the
data value otherwise a runtime exception is thrown.
2 - Method in ICommonBaseEvent and ExtendedDataElement to return the
datetime format as a long representing milliseconds so that a java date
object can be created. The parsing method is located in CbeFormatter.








Regards,
Jason Cornpropst
 IBM/Tivoli Systems
 P&A
 ITEC Development
 (919) 224-1723
 jhcornpr@xxxxxxxxxx








#### IExtendedDataElement.java has been removed from this note on May 06
2003 by Richard Duggan
#### CommonBaseEventImpl.java has been removed from this note on May 06
2003 by Richard Duggan
#### ExtendedDataElementImpl.java has been removed from this note on May 06
2003 by Richard Duggan
#### ICommonBaseEvent.java has been removed from this note on May 06 2003
by Richard Duggan
#### CbeFormatter.java has been removed from this note on May 06 2003 by
Richard Duggan
#### InvalidExtendedDataElementTypeException.java has been removed from
this note on May 06 2003 by Richard Duggan




Back to the top