001/* 002 * Copyright (c) 2006-2011 Nuxeo SA (http://nuxeo.com/) and others. 003 * 004 * All rights reserved. This program and the accompanying materials 005 * are made available under the terms of the Eclipse Public License v1.0 006 * which accompanies this distribution, and is available at 007 * http://www.eclipse.org/legal/epl-v10.html 008 * 009 * Contributors: 010 * bstefanescu 011 */ 012package org.nuxeo.ecm.webengine.jaxrs.servlet.config; 013 014import java.net.URL; 015 016import org.osgi.framework.Bundle; 017 018/** 019 * @author <a href="mailto:bs@nuxeo.com">Bogdan Stefanescu</a> 020 */ 021public class BundleResourceResolver implements ResourceResolver { 022 023 protected Bundle bundle; 024 025 protected String prefix; 026 027 public BundleResourceResolver(Bundle bundle, String prefix) { 028 this.bundle = bundle; 029 this.prefix = prefix.endsWith("/") ? prefix.substring(0, prefix.length() - 1) : prefix; 030 } 031 032 @Override 033 public URL getResource(String name) { 034 return bundle.getEntry(name.startsWith("/") ? prefix + name : prefix + '/' + name); 035 } 036 037}