/**
     * @see SubmissionFileDAODelegate::insert()
     * @param $artworkFile ArtworkFile
     * @param $sourceFile object Source file
     * @param $isUpload boolean True iff this is a new upload.
     * @return ArtworkFile|null
     */
    function insertObject($artworkFile, $sourceFile, $isUpload = false)
    {
        // First insert the data for the super-class.
        $artworkFile = parent::insertObject($artworkFile, $sourceFile, $isUpload);
        if (!$artworkFile) {
            return null;
        }
        // Now insert the artwork-specific data.
        $this->update('INSERT INTO submission_artwork_files
				(file_id, revision, caption, chapter_id, contact_author, copyright_owner, copyright_owner_contact, credit, permission_file_id, permission_terms)
			VALUES
				(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)', array($artworkFile->getFileId(), $artworkFile->getRevision(), $artworkFile->getCaption(), $artworkFile->getChapterId(), $artworkFile->getContactAuthor(), $artworkFile->getCopyrightOwner(), $artworkFile->getCopyrightOwnerContactDetails(), $artworkFile->getCredit(), $artworkFile->getPermissionFileId(), $artworkFile->getPermissionTerms()));
        return $artworkFile;
    }
    /**
     * @see SubmissionFileDAODelegate::insert()
     * @param $supplementaryFile SupplementaryFile
     * @return SupplementaryFile|null
     */
    function insertObject($supplementaryFile, $sourceFile, $isUpload = false)
    {
        // First insert the data for the super-class.
        $supplementaryFile = parent::insertObject($supplementaryFile, $sourceFile, $isUpload);
        if (!$supplementaryFile) {
            return null;
        }
        // Now insert the supplementary-specific data.
        $this->update('INSERT INTO submission_supplementary_files
				(file_id, revision)
			VALUES
				(?, ?)', array((int) $supplementaryFile->getFileId(), (int) $supplementaryFile->getRevision()));
        return $supplementaryFile;
    }