Class Project


public class Project extends Object
Represents a single 3D print project stored by the application.

This value object contains the metadata persisted in the application's H2 database (see `projects` table). Typical usage is to construct an instance from a ResultSet retrieved from the database and then expose the values to UI components or reporting utilities.

Since:
1.0.0
  • Field Details

    • id

      private int id
      Unique project ID (primary key in database)
    • name

      private String name
      Project name/title
    • projectType

      private String projectType
      Project type (e.g., Prototype, Final Print)
    • filePath

      private String filePath
      Absolute path to project files on disk
    • description

      private String description
      Project description or notes
    • createdDate

      private Timestamp createdDate
      Timestamp when project was created
    • lastPrintedDates

      private List<Timestamp> lastPrintedDates
      List of timestamps recording last printed dates
  • Constructor Details

    • Project

      public Project(int id, String name, String projectType, String filePath, String description, Timestamp createdDate)
      Create a new Project instance with metadata values.
      Parameters:
      id - the unique project identifier (database primary key)
      name - human-readable project name
      projectType - a short category string describing the project
      filePath - absolute filesystem path where project files reside
      description - free-text description or notes
      createdDate - timestamp when the project record was created
  • Method Details

    • getId

      public int getId()
      Returns the unique database identifier for this project.
      Returns:
      the database id for this project
    • getName

      public String getName()
      Returns the human-readable project name.
      Returns:
      the project name
    • getProjectType

      public String getProjectType()
      Returns the project type or category (e.g., Prototype, Final Print).
      Returns:
      the project type/category
    • getFilePath

      public String getFilePath()
      Returns the absolute filesystem path where the project's files reside.
      Returns:
      absolute path to the project's files
    • getDescription

      public String getDescription()
      Returns the project's description or user-supplied notes.
      Returns:
      project description or notes
    • getCreatedDate

      public Timestamp getCreatedDate()
      Returns the timestamp when the project record was created.
      Returns:
      when the project was created in the system
    • setLastPrintedDates

      public void setLastPrintedDates(List<Timestamp> lastPrintedDates)
      Replace the cached list of last-printed timestamps for the project.
      Parameters:
      lastPrintedDates - list of timestamps (may be null)
    • getLastPrintedDates

      public List<Timestamp> getLastPrintedDates()
      Retrieve the list of last-printed timestamps recorded for this project.
      Returns:
      list of timestamps or null if none have been set