/**
* Copyright (c)2010-2011 Enterprise Website Content Management System(EWCMS), All rights reserved.
* EWCMS PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
* http://www.ewcms.com
*/
/*
*/
package com.ewcms.web.context;
import org.springframework.util.Assert;
/**
*/
public class ThreadLocalEwcmsContextHolderStrategy implements EwcmsContextHolderStrategy {
private static ThreadLocal<EwcmsContextable> contextHolder = new ThreadLocal<EwcmsContextable>();
@Override
public void clearContext() {
contextHolder.remove();
}
@Override
public EwcmsContextable getContext() {
if (contextHolder.get() == null) {
contextHolder.set(new EwcmsContext());
}
return (EwcmsContextable) contextHolder.get();
}
@Override
public void setContext(EwcmsContextable context) {
Assert.notNull(context, "Only non-null SecurityContext instances are permitted");
contextHolder.set(context);
}
}