Create Java Impact Report Actions

Create Java Impact Report actions produce reports based on the contents of Java class files or archives uploaded to the Data/Java Files folder in the LiveCompare hierarchy. Each report generated by the action is stored in a folder underneath the LiveCompare user data directory. If the Create Java Impact Report action’s Fixed parameter is set to ‘false’, its reports are stored in the following time-stamped directory:

<LiveCompare user data dir>\public\Reports\<Workspace Name>\<Report Name>_YYYYMMDD_HHMMSS

If the Create Java Impact Report action’s Fixed parameter is set to ‘true’, its reports are stored in the following directory, which does not include a time stamp:

<LiveCompare user data dir>\public\Reports\<Workspace Name>\<Report Name>

Action Property Description

Fixed

A Boolean parameter which indicates whether the Create Java Impact Report action will generate fixed location reports. If this parameter is set to ‘true’, the action stores its report in the <Report Name> directory; this directory will be removed and then recreated each time the action is run. If the Fixed parameter is set to ‘false’, a new report will be generated in its own time-stamped directory each time the action is run.

Each fixed location report in a workspace should normally have a different value for its Report Name parameter. This will ensure that each workflow’s Report URL dataset points to the expected report.

Lefts

A String List parameter where each item refers to the name of an uploaded Java class file or archive. If both ‘Lefts’ and ‘Rights’ are specified, a Comparison report is produced where ‘Lefts’ and ‘Rights’ are compared.

Object Status to Keep

A String List parameter defining the object comparison statuses to appear in the report. The String List parameter may contain the values ‘Same’, ‘Different’, ‘In1’, ‘In2’, ‘NotCompared’, ‘CantCompare’ or ‘NotIn1Or2’. If this action property is not set, all comparison statuses are shown.

Report Name

A String parameter which stores the name used for the generated report. If the Fixed parameter is set to ‘false’, the generated report name includes a timestamp indicating when the report was created.

Report URL

A String dataset which is set to the URL of the generated report.

Rights

A String List parameter where each item refers to the name of an uploaded Java class file or archive. If both ‘Lefts’ and ‘Rights’ are specified, a Comparison report is produced where ‘Lefts’ and ‘Rights’ are compared.

Tops

A String List parameter where each item refers to the name of an uploaded class file or archive. If ‘Lefts’, ‘Rights’ and ‘Tops’ are specified, an Impact Analysis report is produced where the differences between ‘Lefts’ and ‘Rights’ are assessed for their impact on ‘Tops’.

Comparison Reports

If the Lefts and Rights properties are specified, the Create Java Impact Report action produces a Comparison report where Lefts and Rights are compared.

  • Classes that exist in Lefts only are marked as ‘In1’.
  • Classes that exist in Rights only are marked as ‘In2’.
  • If a class exists in both Lefts and Rights, its methods are compared by comparing their signatures. If the signatures are the same, the class is marked ‘Same’. If the signatures are different, the class from Lefts is marked as ‘In1’ and the class from Rights is marked as ‘In2’.
  • Text files embedded in Java archives are compared, based on their file extension. JavaScript files (.js), Java Server Pages (.jsp) manifest files (.mf), XML files (.xml) and property files (.properties) are compared.

Note that because Java supports overloading (two methods with the same name but with different arguments), it is not possible to mark a method as ‘Different’.

Impact Analysis Reports

If the Lefts, Rights and Tops properties are specified, the Create Java Impact Report action produces an Impact Analysis report where the differences between Lefts and Rights are assessed for their impact on Tops. For example, the Tops property may refer to an uploaded custom class which has a parent class in both Lefts and Rights. If the parent classes in Lefts and Rights are different, the custom class in Tops is likely to be impacted.

Contents Reports

If Lefts or Rights only is specified, the Create Java Impact Report action produces a Contents report listing the interfaces, fields, text files, classes and methods in the specified Java files.

Generated Java Impact reports may be accessed by double-clicking the action’s Report URL dataset, or by choosing ‘View Details’ from the dataset’s context menu. They may also be accessed from a workspace’s Reports folder in the LiveCompare hierarchy. Choose ‘Reload Children’ from the folder’s context menu to list any newly-generated reports.

The progress of a Create Java Impact Report action may be monitored by viewing the Details screen while the action is running. The Details screen displays information on the operation that is currently being performed.

Example:

Create Java Impact Report action example.

To examine the details for a Create Java Impact Report action, double-click the action node, or select ‘View Details’ from the node’s context menu. The Details screen displays the values of the Lefts, Rights, Tops and Object Status to Keep parameters.

The progress of a Create Java Impact Report action may be monitored by viewing the Details screen while the action is running. The following details are shown:

Item Description

Objects Done

The number of objects processed so far.

Elapsed time (seconds)

The time for which the Create Java Impact Report action has been running.

Total elapsed time hh:mm:ss

The time for which the Create Java Impact Report action has been running in hours, minutes and seconds.

Press the F5 key periodically to update the display.