001    package railo.runtime.type.scope.storage;
002    
003    import railo.commons.io.log.Log;
004    import railo.runtime.PageContext;
005    import railo.runtime.type.StructImpl;
006    import railo.runtime.type.dt.DateTimeImpl;
007    import railo.runtime.type.scope.ScopeContext;
008    
009    /**
010     * client scope that not store it's data
011     */
012    public abstract class StorageScopeMemory extends StorageScopeImpl implements MemoryScope {
013    
014            private static final long serialVersionUID = -6917303245683342065L;
015    
016    
017            /**
018             * Constructor of the class
019             * @param pc
020             * @param log 
021             * @param name
022             */
023            protected StorageScopeMemory(PageContext pc,String strType, int type, Log log) {
024                    super(
025                                    new StructImpl(),
026                                    new DateTimeImpl(pc.getConfig()),
027                                    null,
028                                    -1,1,strType,type);
029                    ScopeContext.info(log,"create new memory based "+strType+" scope for "+pc.getApplicationContext().getName()+"/"+pc.getCFID());
030                    
031            }
032    
033            /**
034             * Constructor of the class, clone existing
035             * @param other
036             */
037            protected StorageScopeMemory(StorageScopeMemory other,boolean deepCopy) {
038                    super(other,deepCopy);
039            }
040            
041            
042            
043    
044            
045            @Override
046            public String getStorageType() {
047                    return "Memory";
048            }
049    }