![JAR search and dependency download from the Maven repository](/logo.png)
net.intelie.liverig.witsml.StoreSoapPortService Maven / Gradle / Ivy
The newest version!
package net.intelie.liverig.witsml;
import com.google.common.base.Preconditions;
import com.google.common.base.Strings;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.witsml.wsdl._120.StoreSoapPort;
import javax.jws.WebService;
import javax.xml.ws.Holder;
import static net.intelie.liverig.witsml.WITSMLException.SUCCESS;
import static net.intelie.liverig.witsml.WITSMLException.UNKNOWN_PROGRAM_ERROR;
@WebService(targetNamespace = "http://www.witsml.org/wsdl/120",
serviceName = "WMLS", portName = "StoreSoapPort",
wsdlLocation = "wsdl/witsml-1.2.0.wsdl",
endpointInterface = "org.witsml.wsdl._120.StoreSoapPort")
public class StoreSoapPortService implements StoreSoapPort {
private static final Logger LOGGER = LoggerFactory.getLogger(StoreSoapPortService.class);
private final StoreSoapPortInterface impl;
public StoreSoapPortService() {
this(null);
}
public StoreSoapPortService(StoreSoapPortInterface impl) {
this.impl = impl;
}
@Override
public Short wmlsAddToStore(String wmLtypeIn, String xmLin, String optionsIn, String capabilitiesIn,
Holder suppMsgOut) {
try {
checkState();
return success(suppMsgOut, impl.addToStore(wmLtypeIn, xmLin, optionsIn, capabilitiesIn));
} catch (Exception e) {
return error(e, suppMsgOut);
}
}
@Override
public Short wmlsDeleteFromStore(String wmLtypeIn, String queryIn, String optionsIn, String capabilitiesIn,
Holder suppMsgOut) {
try {
checkState();
impl.deleteFromStore(wmLtypeIn, queryIn, optionsIn, capabilitiesIn);
return success(suppMsgOut);
} catch (Exception e) {
return error(e, suppMsgOut);
}
}
@Override
public String wmlsGetBaseMsg(short returnValueIn) {
checkState();
return impl.getBaseMsg(returnValueIn);
}
@Override
public Short wmlsGetCap(String optionsIn,
Holder capabilitiesOut, Holder suppMsgOut) {
try {
checkState();
return success(suppMsgOut, capabilitiesOut, impl.getCap(optionsIn));
} catch (Exception e) {
return error(e, suppMsgOut, capabilitiesOut);
}
}
@Override
public Short wmlsGetFromStore(String wmLtypeIn, String queryIn, String optionsIn, String capabilitiesIn,
Holder xmLout, Holder suppMsgOut) {
try {
checkState();
return success(suppMsgOut, xmLout, impl.getFromStore(wmLtypeIn, queryIn, optionsIn, capabilitiesIn));
} catch (Exception e) {
return error(e, suppMsgOut, xmLout);
}
}
@Override
public String wmlsGetVersion() {
checkState();
return impl.getVersion();
}
@Override
public Short wmlsUpdateInStore(String wmLtypeIn, String xmLin, String optionsIn, String capabilitiesIn,
Holder suppMsgOut) {
try {
checkState();
impl.updateInStore(wmLtypeIn, xmLin, optionsIn, capabilitiesIn);
return success(suppMsgOut);
} catch (Exception e) {
return error(e, suppMsgOut);
}
}
private void checkState() {
Preconditions.checkState(impl != null, "Using default initialized StoreSoapPortService");
}
private static short success(Holder suppMsgOut, Holder out, WITSMLResult value) {
success(suppMsgOut, out, value.getXml());
return value.getResult();
}
private static short success(Holder suppMsgOut, Holder out, String value) {
out.value = Strings.nullToEmpty(value);
return success(suppMsgOut);
}
private static short success(Holder suppMsgOut, String value) {
suppMsgOut.value = Strings.nullToEmpty(value);
return SUCCESS;
}
private static short success(Holder suppMsgOut) {
return success(suppMsgOut, "");
}
private static short error(Throwable t, Holder suppMsgOut, Holder out) {
out.value = "";
return error(t, suppMsgOut);
}
private static short error(Throwable t, Holder suppMsgOut) {
suppMsgOut.value = Strings.nullToEmpty(t.getMessage());
log(t);
return t instanceof WITSMLException ? ((WITSMLException) t).getReturnValue() : UNKNOWN_PROGRAM_ERROR;
}
private static void log(Throwable t) {
if (!(t instanceof WITSMLException) || ((WITSMLException) t).getReturnValue() == UNKNOWN_PROGRAM_ERROR)
LOGGER.error("Unexpected exception", t);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy