Example usage for com.badlogic.gdx.files FileHandle write

List of usage examples for com.badlogic.gdx.files FileHandle write

Introduction

In this page you can find the example usage for com.badlogic.gdx.files FileHandle write.

Prototype

public void write(InputStream input, boolean append) 

Source Link

Document

Reads the remaining bytes from the specified stream and writes them to this file.

Usage

From source file:com.vlaaad.dice.services.LocalCloudSave.java

License:Open Source License

@Override
public void sync(UserData userData, IConflictResolver resolver) {
    FileHandle dir = Gdx.files.external(DIR);
    dir.mkdirs();/*from  ww w  .  j a va 2  s .c  om*/
    final FileHandle saveFile = dir.child(SAVE_FILE_NAME);
    final FileHandle conflicted = dir.child(CONFLICT_FILE_NAME);
    if (saveFile.exists()) {
        DiceHeroes app = (DiceHeroes) Gdx.app.getApplicationListener();
        if (app.firstSession) {
            if (!conflicted.exists())
                conflicted.write(saveFile.read(), false);
        }
    }
    toFile(userData, saveFile);
    if (conflicted.exists()) {
        final Map local = fromFile(saveFile);
        final Map server = fromFile(conflicted);
        resolver.resolveConflict(server, new IConflictResolverCallback() {
            @Override
            public void onResolved(boolean useLocal) {
                conflicted.delete();
                toFile(useLocal ? local : server, saveFile);
            }
        });
    }
}