001    package railo.runtime.cache;
002    
003    import java.io.IOException;
004    
005    import railo.commons.io.cache.Cache;
006    import railo.runtime.config.Config;
007    import railo.runtime.config.ConfigServerImpl;
008    import railo.runtime.type.Struct;
009    
010    public class ServerCacheConnection implements CacheConnection {
011    
012            private CacheConnection cc;
013            private ConfigServerImpl cs;
014    
015            /**
016             * Constructor of the class
017             * @param configServer 
018             * @param cc
019             */
020            public ServerCacheConnection(ConfigServerImpl cs, CacheConnection cc) {
021                    this.cs=cs;
022                    this.cc=cc;
023            }
024    
025            @Override
026            public CacheConnection duplicate(Config config) throws IOException {
027                    return new ServerCacheConnection(cs,cc.duplicate(config));
028            }
029    
030            @Override
031            public Class getClazz() {
032                    return cc.getClazz();
033            }
034    
035            @Override
036            public Struct getCustom() {
037                    return cc.getCustom();
038            }
039    
040            @Override
041            public Cache getInstance(Config config) throws IOException {
042                    return cc.getInstance(cs);
043            }
044    
045            public String getName() {
046                    return cc.getName();
047            }
048    
049            @Override
050            public boolean isReadOnly() {
051                    return true;
052            }
053    
054            @Override
055            public boolean isStorage() {
056                    return cc.isStorage();
057            }
058    
059    }