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

net.intelie.liverig.witsml.query.LogQuery141 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.LogData;
import net.intelie.liverig.witsml.objects.LogRange;

import java.util.ArrayList;

class LogQuery141 extends AbstractLogQuery141 implements LogQuery {
    private final boolean logData;
    private final boolean raw;

    LogQuery141(String uidWell, String uidWellbore, String uid, WitsmlFilters filters, LogRange range, boolean logData, boolean raw) {
        super(uidWell, uidWellbore, uid, filters, range);
        this.logData = logData;
        this.raw = raw;
    }

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

    @Override
    public LogData parse(WITSMLResult witsmlResult) throws ParseException {
        String xml = witsmlResult.getXml();
        LogData result = new LogData();
        if (logData)
            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