001package io.ebean;
002
003import org.slf4j.Logger;
004import org.slf4j.LoggerFactory;
005
006import java.io.IOException;
007import java.io.InputStream;
008import java.util.Properties;
009/**
010 * Class to determine the ebean version. (
011 * @author Roland Praml, FOCONIS AG
012 *
013 */
014public class EbeanVersion {
015  private EbeanVersion() {
016
017  }
018  private static final Logger logger = LoggerFactory.getLogger(EbeanVersion.class);
019
020  private static String version = "unknown";
021  static {
022    try {
023      Properties prop = new Properties();
024      try (InputStream in = Ebean.class.getResourceAsStream("/META-INF/maven/io.ebean/ebean/pom.properties")) {
025        if (in != null) {
026          prop.load(in);
027          in.close();
028          version = prop.getProperty("version");
029        }
030      }
031      logger.info("ebean version: {}", version);
032    } catch (IOException e) {
033      logger.warn("Could not determine ebean version: {}", e.getMessage());
034    }
035  }
036
037  /**
038   * Returns the ebean version (read from /META-INF/maven/io.ebean/ebean/pom.properties)
039   */
040  public static String getVersion() {
041    return version;
042  }
043
044}