package eu.dnetlib.enabling.aas.holder;

import org.opensaml.lite.common.SAMLObject;



/**
 * This {@link IDataHolder} implementation should be declared as request scope
 * in spring configuaration. 
 * @author mhorst
 *
 */
public class RequestScopeSAMLDataHolder implements IDataHolder<SAMLObject[]> {

	protected SAMLObject[] storedData = null;
	
	/* (non-Javadoc)
	 * @see eu.dnetlib.enabling.aas.holder.IDataHolder#getData()
	 */
	public SAMLObject[] getData() {
		return this.storedData;
	}

	/* (non-Javadoc)
	 * @see eu.dnetlib.enabling.aas.holder.IDataHolder#removeData()
	 */
	public SAMLObject[] removeData() {
		SAMLObject[] result = this.storedData;
		this.storedData = null;
		return result;
	}

	/* (non-Javadoc)
	 * @see eu.dnetlib.enabling.aas.holder.IDataHolder#storeData(java.lang.Object)
	 */
	public void storeData(SAMLObject[] data) {
		this.storedData = data;
	}

}
