All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.bronto.api.operation.AsyncWriteHandler Maven / Gradle / Ivy

The newest version!
package com.bronto.api.operation;

import com.bronto.api.AsyncVoidHandler;

import com.bronto.api.model.ResultItem;
import com.bronto.api.model.WriteResult;

import java.util.ArrayList;
import java.util.List;

public abstract class AsyncWriteHandler extends AsyncVoidHandler {
    @Override
    public void onComplete(WriteResult writeResult) {
        List errors = new ArrayList();
        List success = new ArrayList();

        for (ResultItem result : writeResult.getResults()) {
            if (result.isIsError()) {
                errors.add(result);
            } else {
                success.add(result);
            }
        }

        if (!errors.isEmpty()) {
            onErrorItems(errors);
        }

        if (!success.isEmpty()) {
            onSuccessItems(success);
        }
    }

    @Override
    public void onError(Exception e) {
        throw new RuntimeException(e);
    }

    public abstract void onErrorItems(List errors);
    public abstract void onSuccessItems(List items);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy