Name: siR10004 Date: 01/09/2003
Currently it is impossible to check some package independently of core
java classes and other required classes (set of superclasses/
superinterfaces of the checked classes), because sigfile for
the checked package always contains class members inherited from
all required classes and all these members would be checked
during sigtest run.
For example, a single change in java.lang.Throwable class leads
to errors in virtually all packages. To workaround this problem,
JAXP TCK contains set of sigfiles for each JDK version (1.2, 1.3,
1.4) and uses one of them dependent on JDK that is used to run
the TCK.
To solve this problem and implement independent package checking
the serious changes should be made to sigtest and sigfile format :
- sigfile should contain only declared class members,
- sigfile should contain not only public+protected, but private
class members also (fields and nested classes hiding is possible),
- new "independent" binary check mode should be added to sigtest.
During "independent" binary check only class members that are
inherited from classes from checked package should be checked (along
with declared members, of course). If java core classes (java.lang)
and all other required classes are specified as checked, than this
method will be equivalent to the classic binary check (implemented
in existing sigtest).
The structure of the existing sigtest also should be redesigned
to make it possible to use plug-ins to generate different kinds
of reports, to make different kind of checking, to make a small
agent for ME platform, etc.
This approach will help to solve a number of other problems, for
example merge of several sigfiles into a single one (required for
ME platforms).
======================================================================
Currently it is impossible to check some package independently of core
java classes and other required classes (set of superclasses/
superinterfaces of the checked classes), because sigfile for
the checked package always contains class members inherited from
all required classes and all these members would be checked
during sigtest run.
For example, a single change in java.lang.Throwable class leads
to errors in virtually all packages. To workaround this problem,
JAXP TCK contains set of sigfiles for each JDK version (1.2, 1.3,
1.4) and uses one of them dependent on JDK that is used to run
the TCK.
To solve this problem and implement independent package checking
the serious changes should be made to sigtest and sigfile format :
- sigfile should contain only declared class members,
- sigfile should contain not only public+protected, but private
class members also (fields and nested classes hiding is possible),
- new "independent" binary check mode should be added to sigtest.
During "independent" binary check only class members that are
inherited from classes from checked package should be checked (along
with declared members, of course). If java core classes (java.lang)
and all other required classes are specified as checked, than this
method will be equivalent to the classic binary check (implemented
in existing sigtest).
The structure of the existing sigtest also should be redesigned
to make it possible to use plug-ins to generate different kinds
of reports, to make different kind of checking, to make a small
agent for ME platform, etc.
This approach will help to solve a number of other problems, for
example merge of several sigfiles into a single one (required for
ME platforms).
======================================================================
- relates to
-
CODETOOLS-6483999 APIcover should support a signature file format generated by Sigtest 1.5 tool
-
- Closed
-
-
CODETOOLS-6484003 APICover should provide not only final reports but raw data as well
-
- Closed
-