net.intelie.liverig.witsml.query.AbstractTrajectoryQuery141 Maven / Gradle / Ivy
The newest version!
package net.intelie.liverig.witsml.query;
import com.google.common.base.Strings;
import net.intelie.liverig.witsml.WitsmlFilters;
import net.intelie.liverig.witsml.objects.LogDepthIndex;
import net.intelie.liverig.witsml.objects.LogIndex;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamWriter;
import static net.intelie.liverig.witsml.query.QueryUtil.addFilter;
abstract class AbstractTrajectoryQuery141 extends AbstractQuery141 {
private final String uidWell;
private final String uidWellbore;
private final String uid;
private final WitsmlFilters filters;
private final LogIndex range;
AbstractTrajectoryQuery141(String uidWell, String uidWellbore, String uid, WitsmlFilters filters, LogIndex range) {
this.uidWell = uidWell;
this.uidWellbore = uidWellbore;
this.uid = uid;
this.filters = filters;
this.range = range;
}
@Override
public String type() {
return "trajectory";
}
@Override
void query(XMLStreamWriter writer) throws XMLStreamException {
writeRootElement(writer, "trajectorys");
writer.writeStartElement(WITSML_NS, "trajectory");
writer.writeAttribute("uidWell", uidWell);
writer.writeAttribute("uidWellbore", uidWellbore);
writer.writeAttribute("uid", Strings.nullToEmpty(uid));
addFilter(writer, WITSML_NS, "objectGrowing", filters.objectGrowing());
if (range != null) {
writer.writeStartElement(WITSML_NS, "mdMn");
writer.writeAttribute("uom", Strings.nullToEmpty(range.getStartIndexUom()));
if (range instanceof LogDepthIndex)
writer.writeAttribute("datum", Strings.nullToEmpty(((LogDepthIndex) range).getStartIndexDatum()));
writer.writeCharacters(range.getStartIndex() != null ? range.getStartIndex().toString() : "");
writer.writeEndElement();
writer.writeStartElement(WITSML_NS, "mdMx");
writer.writeAttribute("uom", Strings.nullToEmpty(range.getEndIndexUom()));
if (range instanceof LogDepthIndex)
writer.writeAttribute("datum", Strings.nullToEmpty(((LogDepthIndex) range).getEndIndexDatum()));
writer.writeCharacters(range.getEndIndex() != null ? range.getEndIndex().toString() : "");
writer.writeEndElement();
}
writer.writeEndElement();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy