// ======================================================================== // Copyright (C) zeroth Project Team. All rights reserved. // GNU AFFERO GENERAL PUBLIC LICENSE Version 3, 19 November 2007 // http://www.gnu.org/licenses/agpl-3.0.txt // ======================================================================== package zeroth.framework.enterprise.shared; import java.io.Serializable; import java.util.Date; /** * 監査可能エンティティI/F * @param <U> 利用者オブジェクト型 * @param <ID> 識別子オブジェクト型 * @author nilcy */ public interface Auditable<U, ID extends Serializable> extends Versionable<ID> { /** * 作成者の取得 * @return 作成者 */ U getCreatedBy(); /** * 作成者の設定 * @param createdBy 作成者 */ void setCreatedBy(U createdBy); /** * 作成日時の取得 * @return 作成日時の取得 */ Date getCreatedDate(); /** * 作成日時の設定 * @param createdDate 作成日時 */ void setCreatedDate(Date createdDate); /** * 最終更新者の取得 * @return 最終更新者 */ U getLastModifiedBy(); /** * 最終更新者の設定 * @param lastModifiedBy 最終更新者 */ void setLastModifiedBy(U lastModifiedBy); /** * 最終更新日時の取得 * @return 最終更新日時 */ Date getLastModifiedDate(); /** * 最終更新日時の設定 * @param lastModifiedDate 最終更新日時 */ void setLastModifiedDate(Date lastModifiedDate); }