1 package com.smartdevicelink.protocol;
\r
3 import com.smartdevicelink.protocol.enums.*;
\r
5 public class ProtocolFrameHeaderFactory {
\r
7 public static ProtocolFrameHeader createStartSession(SessionType serviceType, int messageID, byte version) {
\r
8 ProtocolFrameHeader msg = new ProtocolFrameHeader();
\r
9 msg.setVersion(version);
\r
10 msg.setFrameType(FrameType.Control);
\r
11 msg.setSessionType(serviceType);
\r
12 msg.setFrameData(FrameDataControlFrameType.StartSession.value());
\r
13 msg.setMessageID(messageID);
\r
18 public static ProtocolFrameHeader createStartSessionACK(SessionType serviceType, byte sessionID, int messageID, byte version) {
\r
19 ProtocolFrameHeader msg = new ProtocolFrameHeader();
\r
20 msg.setVersion(version);
\r
21 msg.setFrameType(FrameType.Control);
\r
22 msg.setSessionType(serviceType);
\r
23 msg.setSessionID(sessionID);
\r
24 msg.setFrameData(FrameDataControlFrameType.StartSessionACK.value());
\r
25 msg.setMessageID(messageID);
\r
30 public static ProtocolFrameHeader createStartSessionNACK(SessionType serviceType, byte sessionID, int messageID, byte version) {
\r
31 ProtocolFrameHeader msg = new ProtocolFrameHeader();
\r
32 msg.setVersion(version);
\r
33 msg.setFrameType(FrameType.Control);
\r
34 msg.setSessionType(serviceType);
\r
35 msg.setSessionID(sessionID);
\r
36 msg.setFrameData(FrameDataControlFrameType.StartSessionNACK.value());
\r
37 msg.setMessageID(messageID);
\r
42 public static ProtocolFrameHeader createEndSession(SessionType serviceType, byte sessionID, int messageID, byte version) {
\r
43 ProtocolFrameHeader msg = new ProtocolFrameHeader();
\r
44 msg.setVersion(version);
\r
45 msg.setFrameType(FrameType.Control);
\r
46 msg.setSessionType(serviceType);
\r
47 msg.setSessionID(sessionID);
\r
48 msg.setFrameData(FrameDataControlFrameType.EndSession.value());
\r
49 msg.setMessageID(messageID);
\r
54 public static ProtocolFrameHeader createSingleSendData(SessionType serviceType, byte sessionID,
\r
55 int dataLength, int messageID, byte version) {
\r
56 ProtocolFrameHeader msg = new ProtocolFrameHeader();
\r
57 msg.setVersion(version);
\r
58 msg.setFrameType(FrameType.Single);
\r
59 msg.setSessionType(serviceType);
\r
60 msg.setFrameData(ProtocolFrameHeader.FrameDataSingleFrame);
\r
61 msg.setSessionID(sessionID);
\r
62 msg.setDataSize(dataLength);
\r
63 msg.setMessageID(messageID);
\r
68 public static ProtocolFrameHeader createMultiSendDataFirst(SessionType serviceType, byte sessionID,
\r
69 int messageID, byte version) {
\r
70 ProtocolFrameHeader msg = new ProtocolFrameHeader();
\r
71 msg.setVersion(version);
\r
72 msg.setFrameType(FrameType.First);
\r
73 msg.setSessionType(serviceType);
\r
74 msg.setFrameData(ProtocolFrameHeader.FrameDataFirstFrame);
\r
75 msg.setSessionID(sessionID);
\r
77 msg.setMessageID(messageID);
\r
82 public static ProtocolFrameHeader createMultiSendDataRest(SessionType serviceType, byte sessionID,
\r
83 int dataLength, byte frameSequenceNumber, int messageID, byte version) {
\r
84 ProtocolFrameHeader msg = new ProtocolFrameHeader();
\r
85 msg.setVersion(version);
\r
86 msg.setFrameType(FrameType.Consecutive);
\r
87 msg.setSessionType(serviceType);
\r
88 msg.setFrameData(frameSequenceNumber/*FrameData.ConsecutiveFrame.value()*/);
\r
89 msg.setSessionID(sessionID);
\r
90 msg.setDataSize(dataLength);
\r
91 msg.setMessageID(messageID);
\r
96 public static ProtocolFrameHeader createMultiSendDataRest(SessionType serviceType, byte sessionID,
\r
97 int dataLength, int messageID, byte version) {
\r
98 ProtocolFrameHeader msg = new ProtocolFrameHeader();
\r
99 msg.setVersion(version);
\r
100 msg.setFrameType(FrameType.Consecutive);
\r
101 msg.setSessionType(serviceType);
\r
102 msg.setFrameData(FrameData.ConsecutiveFrame.value());
\r
103 msg.setSessionID(sessionID);
\r
104 msg.setDataSize(dataLength);
\r
105 msg.setMessageID(messageID);
\r
110 public static BinaryFrameHeader createBinaryFrameHeader(byte rpcType, int functionID, int corrID, int jsonSize) {
\r
111 BinaryFrameHeader msg = new BinaryFrameHeader();
\r
112 msg.setRPCType(rpcType);
\r
113 msg.setFunctionID(functionID);
\r
114 msg.setCorrID(corrID);
\r
115 msg.setJsonSize(jsonSize);
\r