Java Library - Onix-Systems/GBL-NINJA-SDK-Multiplatform GitHub Wiki

Java Library

Core Java implementation for parsing and creating GBL files. Full-featured with advanced container management and JSON serialization support.

Installation

Gradle

dependencies {
    implementation files('libs/gbl-ninja-java.jar')
}

Usage

Parse GBL File

import com.gbl.ninja.Gbl;
import com.gbl.ninja.results.ParseResult;
import com.gbl.ninja.results.ParseSuccess;
import com.gbl.ninja.results.ParseFatal;

Gbl parser = new Gbl();
ParseResult result = parser.parseByteArray(gblFileBytes);

if (result instanceof ParseSuccess) {
    ParseSuccess success = (ParseSuccess) result;
    System.out.println("Parsed " + success.getResultList().size() + " tags");
    // Process tags
} else if (result instanceof ParseFatal) {
    ParseFatal fatal = (ParseFatal) result;
    System.out.println("Parse error: " + fatal.getError());
}

Create GBL File

import com.gbl.ninja.Gbl.GblBuilder;

GblBuilder builder = GblBuilder.create()
    .application(32L, 0x10000L)  // type, version
    .prog(0x1000L, firmwareData); // flashStartAddress, data

byte[] gblBytes = builder.buildToByteArray();