001// Copyright 2012 The Apache Software Foundation 002// 003// Licensed under the Apache License, Version 2.0 (the "License"); 004// you may not use this file except in compliance with the License. 005// You may obtain a copy of the License at 006// 007// http://www.apache.org/licenses/LICENSE-2.0 008// 009// Unless required by applicable law or agreed to in writing, software 010// distributed under the License is distributed on an "AS IS" BASIS, 011// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 012// See the License for the specific language governing permissions and 013// limitations under the License. 014 015package org.apache.tapestry5.internal.services.assets; 016 017import org.apache.tapestry5.commons.Resource; 018import org.apache.tapestry5.http.ContentType; 019import org.apache.tapestry5.services.assets.ResourceDependencies; 020import org.apache.tapestry5.services.assets.StreamableResource; 021import org.apache.tapestry5.services.assets.StreamableResourceProcessing; 022import org.apache.tapestry5.services.assets.StreamableResourceSource; 023 024import java.io.IOException; 025import java.util.Set; 026 027/** 028 * Base class for {@link StreamableResourceSource} implementations. 029 * 030 * @since 5.4 031 */ 032public abstract class DelegatingSRS implements StreamableResourceSource 033{ 034 protected final StreamableResourceSource delegate; 035 036 protected DelegatingSRS(StreamableResourceSource delegate) 037 { 038 this.delegate = delegate; 039 } 040 041 public Set<String> fileExtensionsForContentType(ContentType contentType) 042 { 043 return delegate.fileExtensionsForContentType(contentType); 044 } 045 046 public StreamableResource getStreamableResource(Resource baseResource, StreamableResourceProcessing processing, ResourceDependencies dependencies) throws IOException 047 { 048 return delegate.getStreamableResource(baseResource, processing, dependencies); 049 } 050}