/**
 * 
 */
package org.eclipse.epf.diagramming.base.persistence;

/**
 * @author Shashidhar Kannoori
 *
 */
public class SaveInfo implements ISaveInfo {

	
	private Object source;
	private long timeStamp;

	/**
	 * 
	 */
	public SaveInfo(Object source, long timeStamp) {
		this.source = source;
		this.timeStamp = timeStamp;
	}

	/* (non-Javadoc)
	 * @see org.eclipse.epf.diagramming.base.persistence.ISaveInfo#getSource()
	 */
	public Object getSource() {
		// TODO Auto-generated method stub
		return source;
	}

	/* (non-Javadoc)
	 * @see org.eclipse.epf.diagramming.base.persistence.ISaveInfo#getTimeStamp()
	 */
	public long getTimeStamp() {
		// TODO Auto-generated method stub
		return timeStamp;
	}

	/* (non-Javadoc)
	 * @see org.eclipse.epf.diagramming.base.persistence.ISaveInfo#setTimeStamp()
	 */
	public void setTimeStamp(long timeStamp) {
		this.timeStamp = timeStamp;
	}

}
