// Path: src/main/java/org/echocat/gradle/plugins/golang/Version.java
// public class Version {
// 
//     private static final Properties PROPERTIES = load();
// 
//     public static final String VERSION = PROPERTIES.getProperty("version", "unknown");
//     public static final String GROUP = PROPERTIES.getProperty("group", Version.class.getPackage().getName());
//     public static final String NAME = PROPERTIES.getProperty("name", Version.class.getPackage().getName());
//     public static final String DESCIPTION = PROPERTIES.getProperty("description", "");
// 
//     private static Properties load() {
//         final Properties result = new Properties();
//         final InputStream is = Version.class.getClassLoader().getResourceAsStream("org/echocat/gradle/plugins/golang/version.properties");
//         if (is != null) {
//             try (final Reader reader = new InputStreamReader(is, "UTF-8")) {
//                 result.load(reader);
//             } catch (final IOException e) {
//                 throw new RuntimeException("Could not read version.properties.", e);
//             } finally {
//                 closeQuietly(is);
//             }
//         }
//         return result;
//     }
// 
// }
// 
// Path: src/main/java/org/echocat/gradle/plugins/golang/vcs/RawVcsReference.java
// public class RawVcsReference extends BaseVcsReference {
// 
//     public RawVcsReference(@Nullable VcsType type, @Nonnull String id, @Nullable URI plain, @Nullable String ref, UpdatePolicy updatePolicy) {
//         super(type, id, plain, ref, updatePolicy);
//     }
// 
// }
// 
// Path: src/main/java/org/echocat/gradle/plugins/golang/vcs/VcsFullReference.java
// public class VcsFullReference {
// 
//     @Nonnull
//     private final VcsReference _reference;
//     @Nonnull
//     private final String _full;
// 
//     public VcsFullReference(@Nonnull VcsReference reference, @Nonnull String full) {
//         _reference = reference;
//         _full = full;
//     }
// 
//     @Nonnull
//     public VcsReference getReference() {
//         return _reference;
//     }
// 
//     @Nonnull
//     public String getFull() {
//         return _full;
//     }
// 
// }


import com.google.gson.annotations.SerializedName;
import org.echocat.gradle.plugins.golang.Version;
import org.echocat.gradle.plugins.golang.vcs.RawVcsReference;
import org.echocat.gradle.plugins.golang.vcs.VcsFullReference;
import javax.annotation.Nonnegative;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import java.util.Map;
import java.util.TreeMap;
import static java.lang.System.currentTimeMillis;
package org.echocat.gradle.plugins.golang.model;




public class ArtifactInfoCache {

    @SerializedName("revision")
    private int _revision = 1;
    @SerializedName("creator")
// Path: src/main/java/org/echocat/gradle/plugins/golang/Version.java
// public class Version {
// 
//     private static final Properties PROPERTIES = load();
// 
//     public static final String VERSION = PROPERTIES.getProperty("version", "unknown");
//     public static final String GROUP = PROPERTIES.getProperty("group", Version.class.getPackage().getName());
//     public static final String NAME = PROPERTIES.getProperty("name", Version.class.getPackage().getName());
//     public static final String DESCIPTION = PROPERTIES.getProperty("description", "");
// 
//     private static Properties load() {
//         final Properties result = new Properties();
//         final InputStream is = Version.class.getClassLoader().getResourceAsStream("org/echocat/gradle/plugins/golang/version.properties");
//         if (is != null) {
//             try (final Reader reader = new InputStreamReader(is, "UTF-8")) {
//                 result.load(reader);
//             } catch (final IOException e) {
//                 throw new RuntimeException("Could not read version.properties.", e);
//             } finally {
//                 closeQuietly(is);
//             }
//         }
//         return result;
//     }
// 
// }
// 
// Path: src/main/java/org/echocat/gradle/plugins/golang/vcs/RawVcsReference.java
// public class RawVcsReference extends BaseVcsReference {
// 
//     public RawVcsReference(@Nullable VcsType type, @Nonnull String id, @Nullable URI plain, @Nullable String ref, UpdatePolicy updatePolicy) {
//         super(type, id, plain, ref, updatePolicy);
//     }
// 
// }
// 
// Path: src/main/java/org/echocat/gradle/plugins/golang/vcs/VcsFullReference.java
// public class VcsFullReference {
// 
//     @Nonnull
//     private final VcsReference _reference;
//     @Nonnull
//     private final String _full;
// 
//     public VcsFullReference(@Nonnull VcsReference reference, @Nonnull String full) {
//         _reference = reference;
//         _full = full;
//     }
// 
//     @Nonnull
//     public VcsReference getReference() {
//         return _reference;
//     }
// 
//     @Nonnull
//     public String getFull() {
//         return _full;
//     }
// 
// }


// Path: src/main/java/org/echocat/gradle/plugins/golang/model/ArtifactInfoCache.java
import com.google.gson.annotations.SerializedName;
import org.echocat.gradle.plugins.golang.Version;
import org.echocat.gradle.plugins.golang.vcs.RawVcsReference;
import org.echocat.gradle.plugins.golang.vcs.VcsFullReference;
import javax.annotation.Nonnegative;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import java.util.Map;
import java.util.TreeMap;
import static java.lang.System.currentTimeMillis;

package org.echocat.gradle.plugins.golang.model;




public class ArtifactInfoCache {

    @SerializedName("revision")
    private int _revision = 1;
    @SerializedName("creator")
    private String _creator = Version.NAME + " " + Version.VERSION;