/*
 * Copyright 2005-2013 The Kuali Foundation
 *
 * Licensed under the Educational Community License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.osedu.org/licenses/ECL-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.kuali.kra.award.notesandattachments.notes;

//import java.sql.Date;  
import java.sql.Timestamp;

import org.kuali.kra.award.AwardAssociate;

/**
 * This class...
 */
public class AwardNotepad extends AwardAssociate {

    private static final long serialVersionUID = 1L;

    private Long awardNotepadId;

    private String awardNumber;

    private Integer entryNumber;

    private String comments;

    private String noteTopic;

    private boolean restrictedView;

    private Timestamp createTimestamp;

    private String createUser;

    /**
     * 
     * Constructs a AwardNotepad.java.
     */
    public AwardNotepad() {
    }

    public Long getAwardNotepadId() {
        return awardNotepadId;
    }

    public void setAwardNotepadId(Long awardNotepadId) {
        this.awardNotepadId = awardNotepadId;
    }

    public String getAwardNumber() {
        return awardNumber;
    }

    public void setAwardNumber(String awardNumber) {
        this.awardNumber = awardNumber;
    }

    public Integer getEntryNumber() {
        return entryNumber;
    }

    public void setEntryNumber(Integer entryNumber) {
        this.entryNumber = entryNumber;
    }

    public String getComments() {
        return comments;
    }

    public void setComments(String comments) {
        this.comments = comments;
    }

    public boolean getRestrictedView() {
        return restrictedView;
    }

    public void setRestrictedView(boolean restrictedView) {
        this.restrictedView = restrictedView;
    }

    /**
     * Gets the noteTopic attribute. 
     * @return Returns the noteTopic.
     */
    public String getNoteTopic() {
        return noteTopic;
    }

    /**
     * Sets the noteTopic attribute value.
     * @param noteTopic The noteTopic to set.
     */
    public void setNoteTopic(String noteTopic) {
        this.noteTopic = noteTopic;
    }

    /**
     * Gets the createTimeStamp attribute. 
     * @return Returns the createTimeStamp.
     */
    public Timestamp getCreateTimestamp() {
        return createTimestamp;
    }

    /**
     * Sets the createTimeStamp attribute value.
     * @param createTimeStamp The createTimeStamp to set.
     */
    public void setCreateTimestamp(Timestamp pCreateTimestamp) {
        this.createTimestamp = pCreateTimestamp;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    /**
     * @see org.kuali.kra.Sequenceable#resetPersistenceState()
     */
    public void resetPersistenceState() {
        this.awardNotepadId = null;
    }
}

@@ -759,27 +759,158 @@
 kra.
-award.AwardAssociat
+SkipVersioning;%0D%0Aimport org.kuali.kra.award.AwardAssociate;%0D%0Aimport org.kuali.kra.bo.KcPerson;%0D%0Aimport org.kuali.kra.infrastructure.KraNotepadInterfac
 e;%0D%0A
@@ -986,16 +986,47 @@
 sociate 
+implements KraNotepadInterface 
 %7B%0A%0A    p
@@ -1343,16 +1343,144 @@
 ateUser;
+%0D%0A%0D%0A    @SkipVersioning%0D%0A    protected transient String updateUserFullName;%0D%0A    protected transient String createUserFullName;%0D
 %0A%0A    /*
@@ -3417,32 +3417,166 @@
 ;%0A    %7D%0A%0A    /**
+    public void setCreateUserFullNamtee(String createUserFullName) %7B%0D%0A        this.createUserFullName = createUserFullName;%0D%0A    %7D%0D%0A%0D%0A
 %0D%0A     * @see or
@@ -3716,11 +3716,1135 @@
 l;%0A    %7D
+%0D%0A%0D%0A    @Override%0D%0A    public String getCreateUserFullName() %7B%0D%0A        if (createUserFullName == null && createUser != null) %7B%0D%0A            KcPerson person = getKcPersonService().getKcPersonByUserName(createUser);%0D%0A            if (person != null) %7B%0D%0A                createUserFullName = person.getFullName();%0D%0A            %7D%0D%0A        %7D%0D%0A        return createUserFullName;%0D%0A    %7D%0D%0A%0D%0A    public void setCreateUserFullName(String createUserFullName) %7B%0D%0A        this.createUserFullName = createUserFullName;%0D%0A    %7D%0D%0A%0D%0A    @Override%0D%0A    public String getUpdateUserFullName() %7B%0D%0A        if (updateUserFullName == null && getUpdateUser() != null) %7B%0D%0A            KcPerson person = getKcPersonService().getKcPersonByUserName(getUpdateUser());%0D%0A            if (person != null) %7B%0D%0A                updateUserFullName = person.getFullName();%0D%0A            %7D%0D%0A        %7D%0D%0A        return this.updateUserFullName;%0D%0A    %7D%0D%0A%0D%0A    public void setUpdateUserFullName(String updateUserFullName) %7B%0D%0A        this.updateUserFullName = updateUserFullName;%0D%0A    %7D%0D%0A    %0D%0A    @Override%0D%0A    public boolean isEditable() %7B%0D%0A        return false;%0D%0A    %7D%0D%0A%0D
 %0A%7D%0A

Add Created By and Create Timestamp elements to remaining Notepads so the author is persisted.