# Class: com.pnfsoftware.jeb.core.Artifact

Basic implementation for a named artifact that takes a flexible [IInput](IInput) object.

## Constructor: Artifact
- parameter: `name`, type: `java.lang.String`
- parameter: `input`, type: `com.pnfsoftware.jeb.core.input.IInput`

Description: Create an artifact backed by the provided input object.
parameter: name: artifact name
parameter: input: artifact input

## Static Field: EMPTY
Type: `com.pnfsoftware.jeb.core.Artifact`
Description: Empty placeholder artifact backed by an empty byte array.

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

Description: Get the artifact creation timestamp.
return: creation timestamp in milliseconds since the epoch

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

Description: Get the input backing this artifact.
return: input object

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

Description: Get the artifact name.
return: artifact name

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

Description: Get the user notes associated with this artifact.
return: user notes

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

Description: Get the parent creator of this artifact.
return: null, because artifacts are root creators

## Method: setInput
- parameter: `input`, type: `com.pnfsoftware.jeb.core.input.IInput`

Description: Set the input backing this artifact.
parameter: input: new input object

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

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

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

Description: Set the user notes associated with this artifact.
parameter: notes: new notes

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


