001/* 002 * Licensed to the Apache Software Foundation (ASF) under one or more 003 * contributor license agreements. See the NOTICE file distributed with 004 * this work for additional information regarding copyright ownership. 005 * The ASF licenses this file to You under the Apache License, Version 2.0 006 * (the "License"); you may not use this file except in compliance with 007 * the License. You may obtain a copy of the License at 008 * 009 * http://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017package org.apache.wicket.resource.bundles; 018 019import org.apache.wicket.Application; 020import org.apache.wicket.ResourceBundles; 021import org.apache.wicket.markup.head.HeaderItem; 022import org.apache.wicket.request.resource.ResourceReference; 023 024/*** 025 * Interface implemented by {@link ResourceReference}s that are bundles. A bundle is a resource that 026 * combines several resources in one item, for example, several javascript files combined into one. 027 * Bundles are rendered as a single {@link HeaderItem}, rather than several, and require only one 028 * HTTP request to download, which can greatly reduce the number HTTP requests needed to get all 029 * resources for a page. Resources need to be registered in {@link ResourceBundles} under 030 * {@link Application#getResourceBundles()}. 031 * 032 * @author papegaaij 033 */ 034public interface IResourceBundle 035{ 036 /** 037 * @return the resources that are provided (part of) this resource. 038 */ 039 Iterable<? extends HeaderItem> getProvidedResources(); 040}