com.blogspot.jabelarminecraft.movinglightsource.VersionChecker.java Source code

Java tutorial

Introduction

Here is the source code for com.blogspot.jabelarminecraft.movinglightsource.VersionChecker.java

Source

/**
Copyright (C) 2014 by jabelar
    
This file is part of jabelar's Minecraft Forge modding examples; as such,
you can redistribute it and/or modify it under the terms of the GNU
General Public License as published by the Free Software Foundation,
either version 3 of the License, or (at your option) any later version.
    
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
    
For a copy of the GNU General Public License see <http://www.gnu.org/licenses/>.
*/

package com.blogspot.jabelarminecraft.movinglightsource;

import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;

import org.apache.commons.io.IOUtils;

/**
 * @author jabelar
 *
 */
public class VersionChecker implements Runnable {
    private static boolean isLatestVersion = false;
    private static String latestVersion = "";

    /* (non-Javadoc)
     * @see java.lang.Runnable#run()
     */
    @Override
    public void run() {
        InputStream in = null;
        try {
            in = new URL(
                    "https://raw.githubusercontent.com/jabelar/MovingLightSource-1.8/master/src/main/java/com/blogspot/jabelarminecraft/movinglightsource/version_file")
                            .openStream();
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        try {
            latestVersion = IOUtils.readLines(in).get(0); // toString(in);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            IOUtils.closeQuietly(in);
        }
        // DEBUG
        System.out.println(
                "Current version is " + MovingLightSource.MODVERSION + " and latest version is " + latestVersion);
        isLatestVersion = MovingLightSource.MODVERSION.compareTo(latestVersion) >= 0;
        System.out.println("Are you running latest version = " + isLatestVersion);
    }

    public boolean isLatestVersion() {
        return isLatestVersion;
    }

    public String getLatestVersion() {
        return latestVersion;
    }
}