HeartPattern
대표칭호 없음
MCVersions
마인크래프트 버전 정보 요청 및 파싱 라이브러리.
이 라이브러리는 Mojang 서버에 버전 정보를 요청하며, 요청 결과를 파싱하여 POJO로 반환합니다.
의존성 추가
Gradle(Kotlin DSL)
repositories {
maven("https://maven.heartpattern.kr/repository/maven-public/")
}
dependencies {
implementation("kr.heartpattern:MCVersions:1.0.0-SNAPSHOT")
}
Gradle(Groovy DSL)
xxxxxxxxxx
repositories {
maven {
url 'https://maven.heartpattern.kr/repository/maven-public/'
}
}
dependencies {
implementation 'kr.heartpattern:MCVersions:1.0.0-SNAPSHOT'
}
Maven
xxxxxxxxxx
<repositories>
<repository>
<id>heartpattern</id>
<url>https://maven.heartpattern.kr/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>kr.heartpattern</groupId>
<artifactId>MCVersions</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
</dependencies>
사용법
Kotlin
코틀린 메서드는 Coroutine을 사용합니다. Coroutine을 선호하지 않는다면 자바 메서드를 사용하시면 됩니다.
xxxxxxxxxx
import kotlinx.coroutines.runBlocking
import kr.heartpattern.mcversions.MCVersions
val client = MCVersions() // 새로운 MCVersion Client 생성
runBlocking{ // Coroutine
val versions = client.requestVersionSet() // 버전 목록 요청
val latestVersionSummary = versions.versions.first() // 첫번째 버전을 가져옴
val latestVersion = client.requestVersion(latestVersionSummary) // 자세한 정보 요청
println(latestVersion.id)
println(latestVersion.releaseTime)
}
client.close() // Client 닫기
Java
자바 메서드는 Java8의 CompletableFuture를 사용합니다
xxxxxxxxxx
import kr.heartpattern.mcversions.MCVersions;
import kr.heartpattern.mcversions.model.Version;
import kr.heartpattern.mcversions.model.VersionSet;
import kr.heartpattern.mcversions.model.VersionSummary;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
class Scratch {
public static void main(String[] args) throws ExecutionException, InterruptedException {
MCVersions client = new MCVersions();
CompletableFuture<VersionSet> versionsFuture = client.requestVersionSetAsync();
VersionSet versions = versionsFuture.get();
VersionSummary latestVersionSummary = versions.getVersions().get(0);
CompletableFuture<Version> latestVersionFuture = client.requestVersionAsync(latestVersionSummary);
Version latestVersion = latestVersionFuture.get();
System.out.println(latestVersion.getId());
System.out.println(latestVersion.getReleaseTime());
client.close();
}
}
댓글이 없습니다.
새로운 댓글을 등록해 주세요!