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

net.intelie.liverig.witsml.query.MudLogQuery141 Maven / Gradle / Ivy

The newest version!
package net.intelie.liverig.witsml.query;

import net.intelie.liverig.parser.ParseException;
import net.intelie.liverig.witsml.WITSMLResult;
import net.intelie.liverig.witsml.WitsmlFilters;
import net.intelie.liverig.witsml.objects.LogIndex;
import net.intelie.liverig.witsml.objects.MudLogData;

import java.util.ArrayList;

class MudLogQuery141 extends AbstractMudLogQuery141 implements MudLogQuery {
    private final boolean geologyInterval;
    private final boolean raw;

    MudLogQuery141(String uidWell, String uidWellbore, String uid, WitsmlFilters filters, LogIndex range, boolean geologyInterval, boolean raw) {
        super(uidWell, uidWellbore, uid, filters, range);
        this.geologyInterval = geologyInterval;
        this.raw = raw;
    }

    @Override
    public String options() {
        return geologyInterval ? RETURN_ELEMENTS_ALL : RETURN_ELEMENTS_HEADER_ONLY;
    }

    @Override
    public MudLogData parse(WITSMLResult witsmlResult) throws ParseException {
        String xml = witsmlResult.getXml();
        MudLogData result = new MudLogData();
        if (geologyInterval)
            result.setData(new ArrayList<>());
        parse(xml, new Parser(result));
        if (raw)
            result.setRaw(xml);
        result.setRawResult(witsmlResult.getResult());
        return result;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy