public interface

ILiveArtifact

com.pnfsoftware.jeb.core.ILiveArtifact

Class Overview

A "runtime" artifact, that connects a project, an artifact, and root units. A live artifact is a representation of an artifact loaded in a project, and whose . loading process has possibly yielded units.

As such, a live artifact ties three essentials components together:

  • a project
  • an artifact
  • root unit(s)

Summary

Public Methods
abstract IArtifact getArtifact()
Get the input artifact.
abstract IUnit getMainUnit()
Convenience method to retrieve the primary (first) unit resulting from the analysis of this artifact.
abstract IRuntimeProject getRuntimeProject()
Get the runtime project.
abstract List<IUnit> getUnits()
Get the units that resulted from the analysis of the artifact within a given project.
abstract boolean load(String wantedType, boolean softDelegation, boolean doNotProcessUnit)
Process and load the artifact into the project.

Public Methods

public abstract IArtifact getArtifact ()

Get the input artifact.

Returns
  • the input artifact, never null

public abstract IUnit getMainUnit ()

Convenience method to retrieve the primary (first) unit resulting from the analysis of this artifact. If no unit exists, null is returned.

Returns
  • the primary unit or null

public abstract IRuntimeProject getRuntimeProject ()

Get the runtime project.

Returns
  • the runtime project, never null

public abstract List<IUnit> getUnits ()

Get the units that resulted from the analysis of the artifact within a given project. Only the top-level units (i.e., those whose direct parent is this artifact) are returned; sub-level units (i.e., those whose parents are other units) can be retrieved by calling getChildren() on the units, recursively.

Returns
  • the units, possibly empty list, but never null

public abstract boolean load (String wantedType, boolean softDelegation, boolean doNotProcessUnit)

Process and load the artifact into the project. This method should not be called directly; it is called by the project manager.

Parameters
wantedType optional (default: null)
softDelegation (default: false)
doNotProcessUnit optional (default: false)