![JAR search and dependency download from the Maven repository](/logo.png)
net.intelie.liverig.witsml.etp.ETPMessageFactory Maven / Gradle / Ivy
The newest version!
package net.intelie.liverig.witsml.etp;
import Energistics.Datatypes.MessageHeader;
import Energistics.Datatypes.Protocols;
import Energistics.Datatypes.SupportedProtocol;
import Energistics.Datatypes.Version;
import Energistics.Protocol.Core.RequestSession;
import net.intelie.liverig.witsml.etp.protocol.MessageFlags;
import net.intelie.liverig.witsml.etp.protocol.MessageTypes;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.concurrent.atomic.AtomicLong;
class ETPMessageFactory {
private AtomicLong nextMessageId = new AtomicLong(1);
MessageHeader discoverMessage() {
return MessageHeader
.newBuilder()
.setMessageType(1)
.setProtocol(Protocols.Discovery.ordinal())
.setCorrelationId(0)
.setMessageId(nextMessageId.getAndIncrement())
.setMessageFlags(MessageFlags.None.ordinal())
.build();
}
MessageHeader objectMessage() {
return MessageHeader
.newBuilder()
.setProtocol(Protocols.Store.ordinal())
.setMessageType(MessageTypes.Store.GetObject)
.setCorrelationId(0)
.setMessageId(nextMessageId.getAndIncrement())
.setMessageFlags(MessageFlags.FinalPart.getValue())
.build();
}
MessageHeader requestSessionMessage() {
return MessageHeader
.newBuilder()
.setMessageType(MessageTypes.Core.RequestSession)
.setProtocol(Protocols.Core.ordinal())
.setCorrelationId(0)
.setMessageId(nextMessageId.getAndIncrement())
.setMessageFlags(MessageFlags.None.ordinal())
.build();
}
MessageHeader closeSessionMessage() {
return MessageHeader
.newBuilder()
.setMessageType(MessageTypes.Core.CloseSession)
.setProtocol(Protocols.Core.ordinal())
.setCorrelationId(0)
.setMessageId(nextMessageId.getAndIncrement())
.setMessageFlags(MessageFlags.None.ordinal())
.build();
}
MessageHeader startMessage() {
return MessageHeader
.newBuilder()
.setMessageType(MessageTypes.ChannelStreaming.Start)
.setProtocol(Protocols.ChannelStreaming.ordinal())
.setCorrelationId(0)
.setMessageId(nextMessageId.getAndIncrement())
.setMessageFlags(MessageFlags.None.ordinal())
.build();
}
MessageHeader channelStreamingStartMessage() {
return MessageHeader
.newBuilder()
.setMessageType(MessageTypes.ChannelStreaming.ChannelStreamingStart)
.setProtocol(Protocols.ChannelStreaming.ordinal())
.setCorrelationId(0)
.setMessageId(nextMessageId.getAndIncrement())
.setMessageFlags(MessageFlags.None.ordinal())
.build();
}
MessageHeader channelStreamingStopMessage() {
return MessageHeader
.newBuilder()
.setMessageType(MessageTypes.ChannelStreaming.ChannelStreamingStop)
.setProtocol(Protocols.ChannelStreaming.ordinal())
.setCorrelationId(0)
.setMessageId(nextMessageId.getAndIncrement())
.setMessageFlags(MessageFlags.None.ordinal())
.build();
}
MessageHeader channelRangeRequestMessage() {
return MessageHeader
.newBuilder()
.setMessageType(MessageTypes.ChannelStreaming.ChannelRangeRequest)
.setProtocol(Protocols.ChannelStreaming.ordinal())
.setCorrelationId(0)
.setMessageId(nextMessageId.getAndIncrement())
.setMessageFlags(MessageFlags.None.ordinal())
.build();
}
MessageHeader channelDescribeMessage() {
return MessageHeader
.newBuilder()
.setMessageType(MessageTypes.ChannelStreaming.ChannelDescribe)
.setProtocol(Protocols.ChannelStreaming.ordinal())
.setCorrelationId(0)
.setMessageId(nextMessageId.getAndIncrement())
.setMessageFlags(MessageFlags.None.ordinal())
.build();
}
RequestSession getRequestSession(String application, String appVersion) {
List supportedProtocols = new ArrayList<>();
Version version = Version
.newBuilder()
.setMajor(1)
.setMinor(1)
.setRevision(0)
.setPatch(0)
.build();
supportedProtocols
.add(
SupportedProtocol
.newBuilder()
.setProtocol(1)
.setProtocolVersion(
version
)
.setRole("producer")
.setProtocolCapabilities(new HashMap<>())
.build()
);
supportedProtocols
.add(
SupportedProtocol
.newBuilder()
.setProtocol(3)
.setProtocolVersion(
version
)
.setRole("store")
.setProtocolCapabilities(new HashMap<>())
.build()
);
supportedProtocols
.add(
SupportedProtocol
.newBuilder()
.setProtocol(4)
.setProtocolVersion(
version
)
.setRole("store")
.setProtocolCapabilities(new HashMap<>())
.build()
);
supportedProtocols
.add(
SupportedProtocol
.newBuilder()
.setProtocol(5)
.setProtocolVersion(
version
)
.setRole("store")
.setProtocolCapabilities(new HashMap<>())
.build()
);
supportedProtocols
.add(
SupportedProtocol
.newBuilder()
.setProtocol(6)
.setProtocolVersion(
version
)
.setRole("store")
.setProtocolCapabilities(new HashMap<>())
.build()
);
return RequestSession
.newBuilder()
.setApplicationName(application)
.setApplicationVersion(appVersion)
.setRequestedProtocols(supportedProtocols)
.setSupportedObjects(new ArrayList<>())
.build();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy