All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.databene.dbsanity.html.HtmlFileReference Maven / Gradle / Ivy

Go to download

DB Sanity is a tool for verifying a database's sanity and data integrity.

There is a newer version: 0.9.4
Show newest version
/*
 * (c) Copyright 2011 by Volker Bergmann. All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, is permitted under the terms of the
 * GNU General Public License (GPL).
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * WITHOUT A WARRANTY OF ANY KIND. ALL EXPRESS OR IMPLIED CONDITIONS,
 * REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE
 * HEREBY EXCLUDED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 */

package org.databene.dbsanity.html;

import java.io.File;

import org.databene.commons.FileUtil;

/**
 * Represents an HTML reference to a file.

* Created: 02.12.2011 18:08:31 * @since 0.9.3 * @author Volker Bergmann */ public class HtmlFileReference extends HtmlElement { private Renderable label; private File targetFile; private String targetSection; public HtmlFileReference(String label, File targetFile) { this(new RenderableText(label), targetFile); } public HtmlFileReference(Renderable label, File targetFile) { this(label, targetFile, null); } public HtmlFileReference(String label, File targetFile, String targetSection) { this(new RenderableText(label), targetFile, targetSection); } public HtmlFileReference(Renderable label, File targetFile, String targetSection) { super("a", true); this.targetFile = targetFile; this.targetSection = targetSection; this.label = label; } public void render(HtmlPrintStream out) { String relativePath = FileUtil.relativePath(out.getFile(), targetFile); if (targetSection != null) relativePath += '#' + targetSection; this.withAttribute("href", relativePath); renderStartTagWithAttributes(out); label.render(out); renderEndTag(out); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy