Fixes #976 Now uses GitHub to retrieve most current version

Reworked whole Version Checker with an extensible interface to add any other service later on easier.
The version checker now has its own config file, to collect the different options and extract them from the main config file.
In that you can specify how fine the versions should be checked.
This commit is contained in:
thatsIch
2015-03-09 17:35:19 +01:00
parent 720b38442e
commit 6baf952904
33 changed files with 2023 additions and 169 deletions
@@ -0,0 +1,42 @@
package appeng.services.version;
/**
* Stores version information, which are easily compared
*/
public interface Version
{
/**
* @return revision of this version
*/
int revision();
/**
* @return channel of this version
*/
Channel channel();
/**
* @return build of this version
*/
int build();
/**
* A version is never if these criteria are met:
* if the current revision is higher than the compared revision OR
* if revision are equal and the current channel is higher than the compared channel (Release > Beta > Alpha) OR
* if revision, channel are equal and the build is higher than the compared build
*
* @return true if criteria are met
*/
boolean isNewerAs( Version maybeOlder );
/**
* Prints the revision, channel and build into a common displayed way
*
* rv2-beta-8
*
* @return formatted version
*/
String formatted();
}