• Home
    • View
    • Login
    This page
    • Normal
    • Export PDF
    • Export Word
    • Attachments
    • Page Information

    Loading...
  1. Dashboard
  2. Code Tools
  3. Main
  4. sigtest
  5. Code structure

Code structure

  • Created by Kevin Looney, last modified by Mikhail Ershov on Mar 05, 2014

SigTest Tool Code Structure

This document describes the high-level structure of the SigTest tool source tree.

Table of Contents

merge your code branch back into the trunk.

Working Copy

Use the Subversion checkout command to create a working copy of the javatest/trunk/code directory. For example:

svn checkout https://svn.java.net/svn/sigtest~svn  SIGTEST  --username java.net_username

Your working copy (in this example, named SIGTEST) has the following structure:

SIGTEST/
    build/

    This directory contains the Ant build files and build properties. You must change property values in the build.properties file in order to successfully build SigTest tool. For more information, see SigTest Tool Build Instructions.

     
    examples/

    This directory contains sample code which can be used to run sigtest. The SigTest User Guide describes examples which can be found in this directory.

    When you build SigTest tool, the README is copied into the build-distribution.
    legal/

    This directory contains the Gnu Public License (2), and copyrights that apply to this open source product.
    src/

    This directory contains all Java programming language source files and various property files that are used to produce the SigTest tool binary.

    Please review the SigTest Tool Developer's Guide and SigTest Tool Source Code Description for coding guidelines and descriptions of the various packages included in the SigTest tool source.

Build Distribution Structure

The build distribution directory is created by the SigTest tool Ant build, into which it generates the built binary distribution. By default, this directory is named sigtest-build, and it is created in the same parent directory as the SIGTEST working copy.

The SigTest tool build distribution has the following structure:

sigtest-<VERSION>-build/
    sigtest-<VERSION>.zip

    This is the bundled build product.
    release/

    This directory contains the finished build product - unbundled.
    temp/

    This directory contains temporary build products, before bundle preparation.

The structure of the release directory is the structure that one sees when unbundling the build product, sigtest-<VERSION>.zip.

 

    README.html
    document.css

     
    examples/

    This directory contains sample code which can be used to run sigtest. The SigTest User Guide describes examples which can be found in this directory.
    javadoc/

    A placeholder directory. Contains the output of the Javadoc™ tool when you specify the javadoc Ant target.
    legal/

    Contains the Gnu Public License (2), and Oracle copyrights that apply to this open source product.
    lib/

    Contains the SigTest tool binaries (sigtest.jar and sigtestdev.jar)

Source Code

The SigTest tool source code is divided into areas based on their responsibility or whether they are general versus or specific.

Packages

The following packages are located under these directories:

src/share/classes/com/sun/tdk/signaturetest/

The package tree:  
`-- com
   `-- sun
       `-- tdk
           `-- signaturetest
               |-- classpath
               |-- core
               |-- errors
               |-- loaders
               |-- merge
               |-- model
               |-- plugin
               |-- sigfile
               `-- util
com.sun.tdk.signaturetest

    Contains top-level classes with functional entry points such as Setup, Test, SetupAndTest and Merge. Also, there are a few base utility classes in this package such as Result and Version.
 
com.sun.tdk.signaturetest.classpath

    Contains abstract classes for the defined ordered input set of analyzed class files as well as their implementations for JAR file and directory processing.

com.sun.tdk.signaturetest.core

    Contains a number of classes responsible for test and setup logic, represented class relationships and also some core utility classes. For example ClassCorrector, ClassDescriptionLoader, Erasurator, ThrowsNormalizer, MemberCollectionBuilder are classes that contain the main logic. Classes like ClassSet, ClassHierarchy, PackageGroup represent relationships between classes. ClassLog is a core utility class.

com.sun.tdk.signaturetest.errors

    Contains classes for formatting SigTest thrown errors.

com.sun.tdk.signaturetest.loaders

    This package contains concrete implementations of ClassDescriptionLoader such as BinaryClassDescrLoader which reads class information via parsing class files and ReflClassDescrLoader which does the same via the reflection mechanism.
com.sun.tdk.signaturetest.merge

    Contains classes responsible for APIs merging according JSR-68 rules.

com.sun.tdk.signaturetest.model

    These are classes describing the internal object model. ClassDescription, Modifier, SuperInterface and AnnotationItem are typical samples of these classes.
com.sun.tdk.signaturetest.plugin

    Contains the tool's plugin API for custom extensions.

com.sun.tdk.signaturetest.sigfile

    Classes for reading and writing signature files in different formats.

com.sun.tdk.signaturetest.util.

    Different general purpose utility classes like CommandLineParser.

 

 

Overview
Content Tools
ThemeBuilder
  • No labels

Terms of Use
• License: GPLv2
• Privacy • Trademarks • Contact Us

Powered by a free Atlassian Confluence Open Source Project License granted to https://www.atlassian.com/software/views/opensource-community-additional-license-offer. Evaluate Confluence today.

  • Kolekti ThemeBuilder Powered by Atlassian Confluence 8.5.21
  • Kolekti ThemeBuilder printed.by.atlassian.confluence
  • Report a bug
  • Atlassian News
Atlassian
Kolekti ThemeBuilder EngineAtlassian Confluence
{"serverDuration": 205, "requestCorrelationId": "b69defdbcc8b7db0"}