Initial Commit
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
package com.hypherionmc.nightbloom.model;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author HypherionSA
|
||||
*/
|
||||
@Getter
|
||||
public class FileSummary {
|
||||
|
||||
private int id;
|
||||
private List<String> modLoaders;
|
||||
private List<String> minecraftVersions;
|
||||
private int downloads;
|
||||
private String version;
|
||||
private int filesize;
|
||||
private String filename;
|
||||
private String downloadUrl;
|
||||
private Date createdAt;
|
||||
private Date updatedAt;
|
||||
|
||||
}
|
@@ -0,0 +1,24 @@
|
||||
package com.hypherionmc.nightbloom.model;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author HypherionSA
|
||||
*/
|
||||
@Getter
|
||||
public class ProjectFile {
|
||||
private int id;
|
||||
private List<String> modLoaders;
|
||||
private List<String> minecraftVersions;
|
||||
private int downloads;
|
||||
private String version;
|
||||
private String changelog;
|
||||
private int filesize;
|
||||
private String filename;
|
||||
private String downloadUrl;
|
||||
private Date createdAt;
|
||||
private Date updatedAt;
|
||||
}
|
@@ -0,0 +1,18 @@
|
||||
package com.hypherionmc.nightbloom.model;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* @author HypherionSA
|
||||
*/
|
||||
@Getter
|
||||
public class ProjectLinks {
|
||||
|
||||
private String websiteUrl;
|
||||
private String wikiUrl;
|
||||
private String issuesUrl;
|
||||
private String sourceUrl;
|
||||
private String modrinthUrl;
|
||||
private String curseforgeUrl;
|
||||
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
package com.hypherionmc.nightbloom.model;
|
||||
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author HypherionSA
|
||||
*/
|
||||
@Builder
|
||||
@Getter
|
||||
public class ProjectMeta {
|
||||
|
||||
private final String version;
|
||||
private final List<String> modloaders = new ArrayList<>();
|
||||
private final List<String> minecraftVersions = new ArrayList<>();
|
||||
private final String changelog;
|
||||
|
||||
public void addModloader(String loader) {
|
||||
if (!modloaders.contains(loader))
|
||||
this.modloaders.add(loader);
|
||||
}
|
||||
|
||||
public void addMinecraft(String mc) {
|
||||
if (!minecraftVersions.contains(mc))
|
||||
minecraftVersions.add(mc);
|
||||
}
|
||||
}
|
@@ -0,0 +1,25 @@
|
||||
package com.hypherionmc.nightbloom.model;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author HypherionSA
|
||||
*/
|
||||
@Getter
|
||||
public class ProjectResponse {
|
||||
|
||||
private int id;
|
||||
private String name;
|
||||
private String slug;
|
||||
private String description;
|
||||
private String logo;
|
||||
private ProjectLinks links;
|
||||
private int downloads;
|
||||
private List<FileSummary> files;
|
||||
private Date createdAt;
|
||||
private Date updatedAt;
|
||||
|
||||
}
|
@@ -0,0 +1,27 @@
|
||||
package com.hypherionmc.nightbloom.model;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* @author HypherionSA
|
||||
*/
|
||||
@Getter
|
||||
public class StandardResponse {
|
||||
|
||||
private boolean error;
|
||||
private String message;
|
||||
private Object data;
|
||||
|
||||
/**
|
||||
* Cast the data variable into a Java Class representing the data returned
|
||||
* @param clazz The class to cast to
|
||||
* @return The class to cast to
|
||||
* @param <T> The class to cast to
|
||||
*/
|
||||
public <T> T getDataAs(Class<T> clazz) {
|
||||
Gson gson = new Gson();
|
||||
String jsonData = gson.toJson(data);
|
||||
return gson.fromJson(jsonData, clazz);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user