# Interface: com.pnfsoftware.jeb.core.IArtifact

Base interface for artifacts. Artifacts form the basic item of analysis: they are loaded within [projects](IRuntimeProject), can be analyzed or processed, and produce zero or more [units](IUnit). Artifacts are [unit creators](IUnitCreator).

## Method: getCreationTimestamp
- return type: `long`

Description: Get the timestamp at which this artifact was loaded into the project.
return: the epoch timestamp in milliseconds

## Method: getInput
- return type: `com.pnfsoftware.jeb.core.input.IInput`

Description: Get the input data for the artifact.
return: the input object

## Method: getName
- return type: `java.lang.String`

Description: Get the artifact name.

## Method: getNotes
- return type: `java.lang.String`

Description: Get user\-specific notes associated to the artifact.
return: the current notes

## Method: getParent
- return type: `com.pnfsoftware.jeb.core.IUnitCreator`

Description: For artifacts, this method always return null. To retrieve the owner project, use [#getParentProject()](#getParentProject()).
return: null

## Method: getParentProject
- return type: `com.pnfsoftware.jeb.core.IRuntimeProject`

Description: Retrieve the parent [project](IRuntimeProject) that owns this artifact.
return: parent project, or null if it cannot be resolved

## Method: setName
- parameter: `name`, type: `java.lang.String`

Description: Set the artifact name.
parameter: name: the new name

## Method: setNotes
- parameter: `notes`, type: `java.lang.String`

Description: Set user\-specific notes associated to the artifact.
parameter: notes: the new notes

