001 /* 002 * (c) Copyright 2009 University of Bristol 003 * All rights reserved. 004 * [See end of file] 005 */ 006 package net.rootdev.javardfa; 007 008 import java.io.IOException; 009 import java.util.Properties; 010 import org.slf4j.Logger; 011 import org.slf4j.LoggerFactory; 012 013 /** 014 * 015 * @author pldms 016 */ 017 public class Version { 018 private final static Logger log = LoggerFactory.getLogger(Version.class); 019 private final static Version i = new Version(); 020 021 private final String name; 022 private final String version; 023 024 public static Version get() { return i; } 025 026 public Version() { 027 Properties props = new Properties(); 028 String _name, _version; 029 try { 030 props.load(Version.class.getResourceAsStream("/library.properties")); 031 _name = props.getProperty("library.name"); 032 _version = props.getProperty("library.version"); 033 } catch (IOException ex) { 034 log.error("Error loading version info from library.properties", ex); 035 _name = "Unknown"; 036 _version = "Unknown"; 037 } 038 this.name = _name; 039 this.version = _version; 040 } 041 042 public String getName() { return this.name; } 043 public String getVersion() { return this.version; } 044 public String toString() { return getName() + " " + getVersion(); } 045 } 046 047 /* 048 * (c) Copyright 2009 University of Bristol 049 * All rights reserved. 050 * 051 * Redistribution and use in source and binary forms, with or without 052 * modification, are permitted provided that the following conditions 053 * are met: 054 * 1. Redistributions of source code must retain the above copyright 055 * notice, this list of conditions and the following disclaimer. 056 * 2. Redistributions in binary form must reproduce the above copyright 057 * notice, this list of conditions and the following disclaimer in the 058 * documentation and/or other materials provided with the distribution. 059 * 3. The name of the author may not be used to endorse or promote products 060 * derived from this software without specific prior written permission. 061 * 062 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 063 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 064 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 065 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 066 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 067 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 068 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 069 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 070 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 071 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 072 */