datawire_mdk 2.0.29 → 2.0.30

Sign up to get free protection for your applications and to get access to all the features.
data/lib/mdk.rb CHANGED
@@ -1,4 +1,4 @@
1
- # Quark 1.0.452 run at 2016-11-04 17:24:33.914374
1
+ # Quark 1.0.452 run at 2016-11-10 18:39:58.222591
2
2
  module Quark
3
3
  require "quark"
4
4
  def self.mdk; Mdk; end
@@ -16,6 +16,7 @@ require_relative 'mdk_introspection' # 0 () ()
16
16
  require_relative 'mdk_discovery/protocol' # 0 ('mdk_discovery',) ()
17
17
  require_relative 'mdk_discovery/synapse' # 0 ('mdk_discovery',) ()
18
18
  require_relative 'mdk_rtp' # 0 () ()
19
+ require_relative 'mdk_tracing/protocol' # 0 ('mdk_tracing',) ()
19
20
  require_relative 'mdk_runtime/promise' # 0 ('mdk_runtime',) ()
20
21
  require_relative 'mdk_util' # 0 () ()
21
22
 
@@ -969,6 +970,92 @@ class TLSInit < ::DatawireQuarkCore::QuarkObject
969
970
  end
970
971
  TLSInit.unlazy_statics
971
972
 
973
+ def self.LoggedMessageId; LoggedMessageId; end
974
+ ##
975
+ # Information about the message that was just logged.
976
+ #
977
+
978
+ class LoggedMessageId < ::DatawireQuarkCore::QuarkObject
979
+ attr_accessor :traceId, :causalLevel, :environment, :environmentFallback
980
+ extend ::DatawireQuarkCore::Static
981
+
982
+ static mdk_LoggedMessageId_ref: -> { nil }
983
+ static quark_List_quark_int__ref: -> { nil }
984
+
985
+
986
+
987
+ def initialize(traceId, causalLevel, environment, environmentFallback)
988
+
989
+ self.__init_fields__
990
+ (self).traceId = traceId
991
+ (self).causalLevel = causalLevel
992
+ (self).environment = environment
993
+ (self).environmentFallback = environmentFallback
994
+
995
+ nil
996
+ end
997
+
998
+
999
+
1000
+
1001
+ def _getClass()
1002
+
1003
+ return "mdk.LoggedMessageId"
1004
+
1005
+ nil
1006
+ end
1007
+
1008
+ def _getField(name)
1009
+
1010
+ if ((name) == ("traceId"))
1011
+ return (self).traceId
1012
+ end
1013
+ if ((name) == ("causalLevel"))
1014
+ return (self).causalLevel
1015
+ end
1016
+ if ((name) == ("environment"))
1017
+ return (self).environment
1018
+ end
1019
+ if ((name) == ("environmentFallback"))
1020
+ return (self).environmentFallback
1021
+ end
1022
+ return nil
1023
+
1024
+ nil
1025
+ end
1026
+
1027
+ def _setField(name, value)
1028
+
1029
+ if ((name) == ("traceId"))
1030
+ (self).traceId = ::DatawireQuarkCore.cast(value) { ::String }
1031
+ end
1032
+ if ((name) == ("causalLevel"))
1033
+ (self).causalLevel = ::DatawireQuarkCore.cast(value) { ::DatawireQuarkCore::List }
1034
+ end
1035
+ if ((name) == ("environment"))
1036
+ (self).environment = ::DatawireQuarkCore.cast(value) { ::String }
1037
+ end
1038
+ if ((name) == ("environmentFallback"))
1039
+ (self).environmentFallback = ::DatawireQuarkCore.cast(value) { ::String }
1040
+ end
1041
+
1042
+ nil
1043
+ end
1044
+
1045
+ def __init_fields__()
1046
+
1047
+ self.traceId = nil
1048
+ self.causalLevel = nil
1049
+ self.environment = nil
1050
+ self.environmentFallback = nil
1051
+
1052
+ nil
1053
+ end
1054
+
1055
+
1056
+ end
1057
+ LoggedMessageId.unlazy_statics
1058
+
972
1059
  def self.SessionImpl; SessionImpl; end
973
1060
  class SessionImpl < ::DatawireQuarkCore::QuarkObject
974
1061
  attr_accessor :_mdk, :_resolved, :_interactionReports, :_context, :_experimental
@@ -1121,59 +1208,51 @@ class SessionImpl < ::DatawireQuarkCore::QuarkObject
1121
1208
 
1122
1209
  def _log(level, category, text)
1123
1210
 
1124
- if (((@_mdk)._tracer) != (nil))
1125
- if (::Quark.mdk.SessionImpl._inLogging.getValue())
1126
- return
1127
- end
1128
- ::Quark.mdk.SessionImpl._inLogging.setValue(true)
1129
- (@_mdk)._tracer.log(@_context, (@_mdk).procUUID, level, category, text)
1130
- ::Quark.mdk.SessionImpl._inLogging.setValue(false)
1211
+ if (::Quark.mdk.SessionImpl._inLogging.getValue())
1212
+ return ::DatawireQuarkCore.cast(nil) { ::Quark.mdk.LoggedMessageId }
1213
+ end
1214
+ ::Quark.mdk.SessionImpl._inLogging.setValue(true)
1215
+ evt = ::Quark.mdk_tracing.createLogEvent(@_context, (@_mdk).procUUID, level, category, text)
1216
+ if ((((@_mdk)._tracer) != (nil)) && (self._enabled(level)))
1217
+ (@_mdk)._tracer.log(evt)
1131
1218
  end
1219
+ ::Quark.mdk.SessionImpl._inLogging.setValue(false)
1220
+ return ::Quark.mdk.LoggedMessageId.new((@_context).traceId, (((evt).context).clock).clocks, ((@_context).environment).name, ((@_context).environment).fallbackName)
1132
1221
 
1133
1222
  nil
1134
1223
  end
1135
1224
 
1136
1225
  def critical(category, text)
1137
1226
 
1138
- if (self._enabled("CRITICAL"))
1139
- self._log("CRITICAL", category, text)
1140
- end
1227
+ return self._log("CRITICAL", category, text)
1141
1228
 
1142
1229
  nil
1143
1230
  end
1144
1231
 
1145
1232
  def error(category, text)
1146
1233
 
1147
- if (self._enabled("ERROR"))
1148
- self._log("ERROR", category, text)
1149
- end
1234
+ return self._log("ERROR", category, text)
1150
1235
 
1151
1236
  nil
1152
1237
  end
1153
1238
 
1154
1239
  def warn(category, text)
1155
1240
 
1156
- if (self._enabled("WARN"))
1157
- self._log("WARN", category, text)
1158
- end
1241
+ return self._log("WARN", category, text)
1159
1242
 
1160
1243
  nil
1161
1244
  end
1162
1245
 
1163
1246
  def info(category, text)
1164
1247
 
1165
- if (self._enabled("INFO"))
1166
- self._log("INFO", category, text)
1167
- end
1248
+ return self._log("INFO", category, text)
1168
1249
 
1169
1250
  nil
1170
1251
  end
1171
1252
 
1172
1253
  def debug(category, text)
1173
1254
 
1174
- if (self._enabled("DEBUG"))
1175
- self._log("DEBUG", category, text)
1176
- end
1255
+ return self._log("DEBUG", category, text)
1177
1256
 
1178
1257
  nil
1179
1258
  end
@@ -1248,6 +1327,7 @@ class SessionImpl < ::DatawireQuarkCore::QuarkObject
1248
1327
  (interactionReport).node = (@_mdk).procUUID
1249
1328
  (interactionReport).timestamp = ((1000.0) * ((@_mdk)._runtime.getTimeService().time())).round()
1250
1329
  (interactionReport).session = (@_context).traceId
1330
+ (interactionReport).environment = (@_context).environment
1251
1331
  (@_interactionReports) << (interactionReport)
1252
1332
  (@_resolved) << (::DatawireQuarkCore::List.new([]))
1253
1333
 
data/lib/mdk_discovery.rb CHANGED
@@ -1,4 +1,4 @@
1
- # Quark 1.0.452 run at 2016-11-04 17:24:33.914374
1
+ # Quark 1.0.452 run at 2016-11-10 18:39:58.222591
2
2
  module Quark
3
3
  require "quark"
4
4
  def self.mdk_discovery; MdkDiscovery; end
@@ -1262,7 +1262,9 @@ class Cluster < ::DatawireQuarkCore::QuarkObject
1262
1262
  while ((jdx) < ((waiting).size)) do
1263
1263
  req = (waiting)[jdx]
1264
1264
  if (::Quark.mdk_util.versionMatch((req).version, (node).version))
1265
- (req).factory.resolve(self._copyNode(node))
1265
+ if (!(((req).factory).promise.value().hasValue()))
1266
+ (req).factory.resolve(self._copyNode(node))
1267
+ end
1266
1268
  else
1267
1269
  ((self)._waiting) << (req)
1268
1270
  end
@@ -1718,8 +1720,13 @@ class Discovery < ::DatawireQuarkCore::QuarkObject
1718
1720
  if (!(cluster.matchingVersionRegistered(version)))
1719
1721
  fallback = environment.getFallback()
1720
1722
  if ((fallback) != (nil))
1721
- self._release()
1722
- return self.resolve(service, version, fallback)
1723
+ fallbackCluster = self._getCluster(service, fallback)
1724
+ if (!(fallbackCluster.matchingVersionRegistered(version)))
1725
+ fallbackCluster._addRequest(version, factory)
1726
+ else
1727
+ self._release()
1728
+ return self.resolve(service, version, fallback)
1729
+ end
1723
1730
  end
1724
1731
  end
1725
1732
  result = cluster.chooseVersion(version)
@@ -1,4 +1,4 @@
1
- # Quark 1.0.452 run at 2016-11-04 17:24:33.914374
1
+ # Quark 1.0.452 run at 2016-11-10 18:39:58.222591
2
2
  module Quark
3
3
  require "quark"
4
4
  def self.mdk_discovery; MdkDiscovery; end
@@ -167,6 +167,7 @@ class DiscoClient < ::DatawireQuarkCore::QuarkObject
167
167
  def onWSConnected(websocket)
168
168
 
169
169
  (self).sock = websocket
170
+ (self).lastHeartbeat = (((self)._timeService.time()) * (1000.0)).round()
170
171
  self.heartbeat()
171
172
 
172
173
  nil
@@ -1,4 +1,4 @@
1
- # Quark 1.0.452 run at 2016-11-04 17:24:33.914374
1
+ # Quark 1.0.452 run at 2016-11-10 18:39:58.222591
2
2
  module Quark
3
3
  require "quark"
4
4
  def self.mdk_discovery; MdkDiscovery; end
@@ -1,4 +1,4 @@
1
- # Quark 1.0.452 run at 2016-11-04 17:24:33.914374
1
+ # Quark 1.0.452 run at 2016-11-10 18:39:58.222591
2
2
  module Quark
3
3
  require "quark"
4
4
  def self.mdk_introspection; MdkIntrospection; end
@@ -1,4 +1,4 @@
1
- # Quark 1.0.452 run at 2016-11-04 17:24:33.914374
1
+ # Quark 1.0.452 run at 2016-11-10 18:39:58.222591
2
2
  module Quark
3
3
  require "quark"
4
4
  def self.mdk_introspection; MdkIntrospection; end
@@ -1,4 +1,4 @@
1
- # Quark 1.0.452 run at 2016-11-04 17:24:33.914374
1
+ # Quark 1.0.452 run at 2016-11-10 18:39:58.222591
2
2
  module Quark
3
3
  require "quark"
4
4
  def self.mdk_introspection; MdkIntrospection; end
data/lib/mdk_metrics.rb CHANGED
@@ -1,4 +1,4 @@
1
- # Quark 1.0.452 run at 2016-11-04 17:24:33.914374
1
+ # Quark 1.0.452 run at 2016-11-10 18:39:58.222591
2
2
  module Quark
3
3
  require "quark"
4
4
  def self.mdk_metrics; MdkMetrics; end
@@ -16,7 +16,7 @@ def self.InteractionEvent; InteractionEvent; end
16
16
  # Wire protocol message for reporting interaction results to MCP.
17
17
 
18
18
  class InteractionEvent < ::Quark.mdk_protocol.Serializable
19
- attr_accessor :timestamp, :uuid, :session, :node, :results
19
+ attr_accessor :timestamp, :environment, :uuid, :session, :node, :results
20
20
  extend ::DatawireQuarkCore::Static
21
21
 
22
22
  static _json_type: -> { "interaction_event" }
@@ -70,6 +70,9 @@ class InteractionEvent < ::Quark.mdk_protocol.Serializable
70
70
  if ((name) == ("timestamp"))
71
71
  return (self).timestamp
72
72
  end
73
+ if ((name) == ("environment"))
74
+ return (self).environment
75
+ end
73
76
  if ((name) == ("uuid"))
74
77
  return (self).uuid
75
78
  end
@@ -95,6 +98,9 @@ class InteractionEvent < ::Quark.mdk_protocol.Serializable
95
98
  if ((name) == ("timestamp"))
96
99
  (self).timestamp = ::DatawireQuarkCore.cast(value) { ::Integer }
97
100
  end
101
+ if ((name) == ("environment"))
102
+ (self).environment = ::DatawireQuarkCore.cast(value) { ::Quark.mdk_protocol.OperationalEnvironment }
103
+ end
98
104
  if ((name) == ("uuid"))
99
105
  (self).uuid = ::DatawireQuarkCore.cast(value) { ::String }
100
106
  end
@@ -115,6 +121,7 @@ class InteractionEvent < ::Quark.mdk_protocol.Serializable
115
121
 
116
122
  super
117
123
  self.timestamp = nil
124
+ self.environment = nil
118
125
  self.uuid = ::Quark.quark.concurrent.Context.runtime().uuid()
119
126
  self.session = nil
120
127
  self.node = nil
@@ -251,14 +258,14 @@ class MetricsClient < ::DatawireQuarkCore::QuarkObject
251
258
  def onWSConnected(websock)
252
259
 
253
260
  (self)._sock = websock
254
- (self)._sendWithAcks.onConnected(self, (self)._dispatcher, websock)
261
+ (self)._sendWithAcks.onConnected(::Quark.mdk_protocol.WSSend.new(self, (self)._dispatcher, (self)._sock))
255
262
 
256
263
  nil
257
264
  end
258
265
 
259
266
  def onPump()
260
267
 
261
- (self)._sendWithAcks.onPump(self, (self)._dispatcher, (self)._sock)
268
+ (self)._sendWithAcks.onPump(::Quark.mdk_protocol.WSSend.new(self, (self)._dispatcher, (self)._sock))
262
269
 
263
270
  nil
264
271
  end
data/lib/mdk_protocol.rb CHANGED
@@ -1,4 +1,4 @@
1
- # Quark 1.0.452 run at 2016-11-04 17:24:33.914374
1
+ # Quark 1.0.452 run at 2016-11-10 18:39:58.222591
2
2
  module Quark
3
3
  require "quark"
4
4
  def self.mdk_protocol; MdkProtocol; end
@@ -135,7 +135,6 @@ class LamportClock < ::Quark.mdk_protocol.Serializable
135
135
  attr_accessor :_mutex, :clocks
136
136
  extend ::DatawireQuarkCore::Static
137
137
 
138
- static quark_List_quark_int__ref: -> { nil }
139
138
  static mdk_protocol_LamportClock_ref: -> { nil }
140
139
 
141
140
 
@@ -1794,7 +1793,7 @@ class AckableEvent < ::DatawireQuarkCore::QuarkObject
1794
1793
 
1795
1794
  self.json_type = nil
1796
1795
  self.sequence = nil
1797
- self.sync = 0
1796
+ self.sync = 1
1798
1797
  self.payload = nil
1799
1798
 
1800
1799
  nil
@@ -1804,16 +1803,142 @@ class AckableEvent < ::DatawireQuarkCore::QuarkObject
1804
1803
  end
1805
1804
  AckableEvent.unlazy_statics
1806
1805
 
1806
+ def self.SendAckableEvent; SendAckableEvent; end
1807
+ ##
1808
+ # Send a message to the other side.
1809
+
1810
+ class SendAckableEvent < ::DatawireQuarkCore::QuarkObject
1811
+ extend ::DatawireQuarkCore::Static
1812
+
1813
+ static mdk_protocol_SendAckableEvent_ref: -> { nil }
1814
+
1815
+
1816
+
1817
+ def initialize()
1818
+ self.__init_fields__
1819
+
1820
+ nil
1821
+ end
1822
+
1823
+
1824
+
1825
+
1826
+ def send(event)
1827
+ raise NotImplementedError, '`SendAckableEvent.send` is an abstract method'
1828
+
1829
+ nil
1830
+ end
1831
+
1832
+ def __init_fields__()
1833
+
1834
+
1835
+ nil
1836
+ end
1837
+
1838
+
1839
+ end
1840
+ SendAckableEvent.unlazy_statics
1841
+
1842
+ def self.WSSend; WSSend; end
1843
+ ##
1844
+ # Send using a WebSocket actor.
1845
+
1846
+ class WSSend < ::DatawireQuarkCore::QuarkObject
1847
+ attr_accessor :origin, :dispatcher, :sock
1848
+ extend ::DatawireQuarkCore::Static
1849
+
1850
+ static mdk_protocol_WSSend_ref: -> { nil }
1851
+
1852
+
1853
+
1854
+ def initialize(origin, dispatcher, sock)
1855
+
1856
+ self.__init_fields__
1857
+ (self).origin = origin
1858
+ (self).dispatcher = dispatcher
1859
+ (self).sock = sock
1860
+
1861
+ nil
1862
+ end
1863
+
1864
+
1865
+
1866
+
1867
+ def send(event)
1868
+
1869
+ @dispatcher.tell(@origin, event.encode(), @sock)
1870
+
1871
+ nil
1872
+ end
1873
+
1874
+ def toString()
1875
+
1876
+ return ((self).sock).to_s
1877
+
1878
+ nil
1879
+ end
1880
+
1881
+ def _getClass()
1882
+
1883
+ return "mdk_protocol.WSSend"
1884
+
1885
+ nil
1886
+ end
1887
+
1888
+ def _getField(name)
1889
+
1890
+ if ((name) == ("origin"))
1891
+ return (self).origin
1892
+ end
1893
+ if ((name) == ("dispatcher"))
1894
+ return (self).dispatcher
1895
+ end
1896
+ if ((name) == ("sock"))
1897
+ return (self).sock
1898
+ end
1899
+ return nil
1900
+
1901
+ nil
1902
+ end
1903
+
1904
+ def _setField(name, value)
1905
+
1906
+ if ((name) == ("origin"))
1907
+ (self).origin = ::DatawireQuarkCore.cast(value) { ::Quark.mdk_runtime.actors.Actor }
1908
+ end
1909
+ if ((name) == ("dispatcher"))
1910
+ (self).dispatcher = ::DatawireQuarkCore.cast(value) { ::Quark.mdk_runtime.actors.MessageDispatcher }
1911
+ end
1912
+ if ((name) == ("sock"))
1913
+ (self).sock = ::DatawireQuarkCore.cast(value) { ::Quark.mdk_runtime.actors.Actor }
1914
+ end
1915
+
1916
+ nil
1917
+ end
1918
+
1919
+ def __init_fields__()
1920
+
1921
+ self.origin = nil
1922
+ self.dispatcher = nil
1923
+ self.sock = nil
1924
+
1925
+ nil
1926
+ end
1927
+
1928
+
1929
+ end
1930
+ WSSend.unlazy_statics
1931
+
1807
1932
  def self.SendWithAcks; SendWithAcks; end
1808
1933
  ##
1809
1934
  # Utility class for sending messages with a protocol that sends back acks.
1810
1935
  #
1811
1936
 
1812
1937
  class SendWithAcks < ::DatawireQuarkCore::QuarkObject
1813
- attr_accessor :_syncRequestPeriod, :_syncInFlightMax, :_buffered, :_inFlight, :_added, :_sent, :_failedSends, :_recorded, :_lastSyncTime, :_myLog
1938
+ attr_accessor :_buffered, :_inFlight, :_added, :_sent, :_recorded, :_myLog
1814
1939
  extend ::DatawireQuarkCore::Static
1815
1940
 
1816
- static quark_List_mdk_protocol_AckableEvent__ref: -> { nil }
1941
+ static quark_Map_quark_long_mdk_protocol_AckableEvent__ref: -> { nil }
1817
1942
  static mdk_protocol_SendWithAcks_ref: -> { nil }
1818
1943
 
1819
1944
 
@@ -1829,7 +1954,7 @@ class SendWithAcks < ::DatawireQuarkCore::QuarkObject
1829
1954
 
1830
1955
  def _debug(message)
1831
1956
 
1832
- s = (((("[") + (((@_buffered).size).to_s)) + (" buf, ")) + (((@_inFlight).size).to_s)) + (" inf] ")
1957
+ s = (((("[") + (((::DatawireQuarkCore::List.new((@_buffered).keys)).size).to_s)) + (" buf, ")) + (((::DatawireQuarkCore::List.new((@_inFlight).keys)).size).to_s)) + (" inf] ")
1833
1958
  @_myLog.debug((s) + (message))
1834
1959
 
1835
1960
  nil
@@ -1838,22 +1963,11 @@ class SendWithAcks < ::DatawireQuarkCore::QuarkObject
1838
1963
  ##
1839
1964
  # Call when (re)connected to other side.
1840
1965
 
1841
- def onConnected(origin, dispatcher, sock)
1966
+ def onConnected(sender)
1842
1967
 
1843
- while (((@_buffered).size) > (0)) do
1844
- debugSuffix = ""
1845
- evt = (@_buffered).delete_at(0)
1846
- (@_inFlight) << (evt)
1847
- if (((evt.getTimestamp()) > ((@_lastSyncTime) + (@_syncRequestPeriod))) || (((@_inFlight).size) == (@_syncInFlightMax)))
1848
- (evt).sync = 1
1849
- @_lastSyncTime = evt.getTimestamp()
1850
- debugSuffix = " with sync set"
1851
- end
1852
- dispatcher.tell(origin, evt.encode(), sock)
1853
- (evt).sync = 0
1854
- @_sent = (@_sent) + ((1))
1855
- self._debug((((("sent #") + (((evt).sequence).to_s)) + (debugSuffix)) + (" to ")) + ((sock).to_s))
1856
- end
1968
+ (@_buffered).merge!(@_inFlight)
1969
+ @_inFlight = {}
1970
+ self.onPump(sender)
1857
1971
 
1858
1972
  nil
1859
1973
  end
@@ -1861,21 +1975,16 @@ class SendWithAcks < ::DatawireQuarkCore::QuarkObject
1861
1975
  ##
1862
1976
  # Call to send buffered messages.
1863
1977
 
1864
- def onPump(origin, dispatcher, sock)
1978
+ def onPump(sender)
1865
1979
 
1866
- while (((@_buffered).size) > (0)) do
1867
- debugSuffix = ""
1868
- evt = (@_buffered).delete_at(0)
1869
- (@_inFlight) << (evt)
1870
- if (((evt.getTimestamp()) > ((@_lastSyncTime) + (@_syncRequestPeriod))) || (((@_inFlight).size) == (@_syncInFlightMax)))
1871
- (evt).sync = 1
1872
- @_lastSyncTime = evt.getTimestamp()
1873
- debugSuffix = " with sync set"
1874
- end
1875
- dispatcher.tell(origin, evt.encode(), sock)
1876
- (evt).sync = 0
1877
- @_sent = (@_sent) + ((1))
1878
- self._debug((((("sent #") + (((evt).sequence).to_s)) + (debugSuffix)) + (" to ")) + ((sock).to_s))
1980
+ seqs = ::DatawireQuarkCore::List.new((@_buffered).keys)
1981
+ (seqs).sort!
1982
+ idx = 0
1983
+ while (((seqs).size) > (idx)) do
1984
+ evt = (@_buffered).delete((seqs)[idx])
1985
+ (@_inFlight)[(evt).sequence] = (evt)
1986
+ sender.send(evt)
1987
+ idx = (idx) + (1)
1879
1988
  end
1880
1989
 
1881
1990
  nil
@@ -1886,15 +1995,9 @@ class SendWithAcks < ::DatawireQuarkCore::QuarkObject
1886
1995
 
1887
1996
  def onAck(sequence)
1888
1997
 
1889
- while (((@_inFlight).size) > (0)) do
1890
- if ((((@_inFlight)[0]).sequence) <= (sequence))
1891
- evt = (@_inFlight).delete_at(0)
1892
- @_recorded = (@_recorded) + ((1))
1893
- self._debug(((("ack #") + ((sequence).to_s)) + (", discarding #")) + (((evt).sequence).to_s))
1894
- else
1895
- break
1896
- end
1897
- end
1998
+ (@_inFlight).delete(sequence)
1999
+ @_recorded = (@_recorded) + ((1))
2000
+ self._debug(((("ack #") + ((sequence).to_s)) + (", discarding #")) + ((sequence).to_s))
1898
2001
 
1899
2002
  nil
1900
2003
  end
@@ -1906,7 +2009,7 @@ class SendWithAcks < ::DatawireQuarkCore::QuarkObject
1906
2009
 
1907
2010
  wrapper = ::Quark.mdk_protocol.AckableEvent.new(json_type, event, @_added)
1908
2011
  @_added = (@_added) + ((1))
1909
- (@_buffered) << (wrapper)
2012
+ (@_buffered)[(wrapper).sequence] = (wrapper)
1910
2013
  self._debug(("logged #") + (((wrapper).sequence).to_s))
1911
2014
 
1912
2015
  nil
@@ -1921,12 +2024,6 @@ class SendWithAcks < ::DatawireQuarkCore::QuarkObject
1921
2024
 
1922
2025
  def _getField(name)
1923
2026
 
1924
- if ((name) == ("_syncRequestPeriod"))
1925
- return (self)._syncRequestPeriod
1926
- end
1927
- if ((name) == ("_syncInFlightMax"))
1928
- return (self)._syncInFlightMax
1929
- end
1930
2027
  if ((name) == ("_buffered"))
1931
2028
  return (self)._buffered
1932
2029
  end
@@ -1939,15 +2036,9 @@ class SendWithAcks < ::DatawireQuarkCore::QuarkObject
1939
2036
  if ((name) == ("_sent"))
1940
2037
  return (self)._sent
1941
2038
  end
1942
- if ((name) == ("_failedSends"))
1943
- return (self)._failedSends
1944
- end
1945
2039
  if ((name) == ("_recorded"))
1946
2040
  return (self)._recorded
1947
2041
  end
1948
- if ((name) == ("_lastSyncTime"))
1949
- return (self)._lastSyncTime
1950
- end
1951
2042
  if ((name) == ("_myLog"))
1952
2043
  return (self)._myLog
1953
2044
  end
@@ -1958,17 +2049,11 @@ class SendWithAcks < ::DatawireQuarkCore::QuarkObject
1958
2049
 
1959
2050
  def _setField(name, value)
1960
2051
 
1961
- if ((name) == ("_syncRequestPeriod"))
1962
- (self)._syncRequestPeriod = ::DatawireQuarkCore.cast(value) { ::Integer }
1963
- end
1964
- if ((name) == ("_syncInFlightMax"))
1965
- (self)._syncInFlightMax = ::DatawireQuarkCore.cast(value) { ::Integer }
1966
- end
1967
2052
  if ((name) == ("_buffered"))
1968
- (self)._buffered = ::DatawireQuarkCore.cast(value) { ::DatawireQuarkCore::List }
2053
+ (self)._buffered = ::DatawireQuarkCore.cast(value) { ::Hash }
1969
2054
  end
1970
2055
  if ((name) == ("_inFlight"))
1971
- (self)._inFlight = ::DatawireQuarkCore.cast(value) { ::DatawireQuarkCore::List }
2056
+ (self)._inFlight = ::DatawireQuarkCore.cast(value) { ::Hash }
1972
2057
  end
1973
2058
  if ((name) == ("_added"))
1974
2059
  (self)._added = ::DatawireQuarkCore.cast(value) { ::Integer }
@@ -1976,15 +2061,9 @@ class SendWithAcks < ::DatawireQuarkCore::QuarkObject
1976
2061
  if ((name) == ("_sent"))
1977
2062
  (self)._sent = ::DatawireQuarkCore.cast(value) { ::Integer }
1978
2063
  end
1979
- if ((name) == ("_failedSends"))
1980
- (self)._failedSends = ::DatawireQuarkCore.cast(value) { ::Integer }
1981
- end
1982
2064
  if ((name) == ("_recorded"))
1983
2065
  (self)._recorded = ::DatawireQuarkCore.cast(value) { ::Integer }
1984
2066
  end
1985
- if ((name) == ("_lastSyncTime"))
1986
- (self)._lastSyncTime = ::DatawireQuarkCore.cast(value) { ::Integer }
1987
- end
1988
2067
  if ((name) == ("_myLog"))
1989
2068
  (self)._myLog = value
1990
2069
  end
@@ -1994,15 +2073,11 @@ class SendWithAcks < ::DatawireQuarkCore::QuarkObject
1994
2073
 
1995
2074
  def __init_fields__()
1996
2075
 
1997
- self._syncRequestPeriod = 5000
1998
- self._syncInFlightMax = 50
1999
- self._buffered = ::DatawireQuarkCore::List.new([])
2000
- self._inFlight = ::DatawireQuarkCore::List.new([])
2076
+ self._buffered = {}
2077
+ self._inFlight = {}
2001
2078
  self._added = 0
2002
2079
  self._sent = 0
2003
- self._failedSends = 0
2004
2080
  self._recorded = 0
2005
- self._lastSyncTime = 0
2006
2081
  self._myLog = ::Quark.quark._getLogger("SendWithAcks")
2007
2082
 
2008
2083
  nil