jetstream-api 0.1.0__tar.gz → 0.1.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jetstream-api
3
- Version: 0.1.0
3
+ Version: 0.1.2
4
4
  Summary: Python client API for iLink M.O.M. (Message Oriented Middleware)
5
5
  Author: snowjeans
6
6
  License: Boost Software License - Version 1.0 - August 17th, 2003
@@ -1,6 +1,6 @@
1
1
  """iLink - Python client API for iLink M.O.M. (Message Oriented Middleware)."""
2
2
 
3
- __version__ = "0.1.0"
3
+ __version__ = "0.1.2"
4
4
 
5
5
  # --- Admin / Service ---
6
6
  from .admin import ILAdminService, ILAdminQmgr, ILLogBrowser, ILQueueBrowser
@@ -924,6 +924,34 @@ class ILAdminService:
924
924
  except Exception as exc:
925
925
  raise ILException(exc) from exc
926
926
 
927
+ def removeSpoke(self, spokeKey: str) -> None:
928
+ """Remove a spoke connection from the service.
929
+
930
+ Args:
931
+ spokeKey: The spoke key identifier to remove.
932
+
933
+ Raises:
934
+ ILException: On communication or server-side errors.
935
+
936
+ Example::
937
+
938
+ spokes = service.getSpokeList()
939
+ for sp in spokes:
940
+ if sp.name == "SPOKE_1":
941
+ service.removeSpoke(sp.key)
942
+ break
943
+ """
944
+ try:
945
+ self.service.request(
946
+ ILC.MIMQ_REMOVE_SPOKE,
947
+ ILC.MIMQ_SUCCESSFUL_REMOVE_SPOKE,
948
+ spokeKey,
949
+ )
950
+ except _PASSTHROUGH_EXCEPTIONS:
951
+ raise
952
+ except Exception as exc:
953
+ raise ILException(exc) from exc
954
+
927
955
  def getSecureFileList(self) -> list[ILSecureFileProperty]:
928
956
  """Retrieve the list of secure files stored on the server.
929
957
 
@@ -321,6 +321,7 @@ class ILC:
321
321
  MIMQ_GET_SPOKE_PROPERTY_LIST = 3319
322
322
  MIMQ_SET_SPOKE_CONNECTION = 3320
323
323
  MIMQ_ADD_SPOKE_CONNECTION = 3321
324
+ MIMQ_REMOVE_SPOKE = 3346
324
325
  MIMQ_SET_SECURE_FILE_PWD = 3322
325
326
  MIMQ_COMPARE_SECURE_FILE_PWD = 3323
326
327
  MIMQ_CREATE_LOG_BROWSER_REQUEST = 3324
@@ -517,6 +518,7 @@ class ILC:
517
518
  MIMQ_SUCCESSFUL_SET_SPOKE_CONNECTION = 4236
518
519
  MIMQ_NOT_SUCCESSFUL_SET_SPOKE_CONNECTION = 4237
519
520
  MIMQ_SUCCESSFUL_ADD_SPOKE_CONNECTION = 4238
521
+ MIMQ_SUCCESSFUL_REMOVE_SPOKE = 4268
520
522
  MIMQ_NOT_SUCCESSFUL_ADD_SPOKE_CONNECTION = 4239
521
523
  MIMQ_SUCCESSFUL_SET_SECURE_FILE_PWD = 4240
522
524
  MIMQ_NOT_SUCCESSFUL_SET_SECURE_FILE_PWD = 4241
@@ -1069,7 +1069,7 @@ class ILQueueRealTimeInfo(_AutoAccessor):
1069
1069
  class ILQueueFlow(_AutoAccessor):
1070
1070
  def __init__(
1071
1071
  self,
1072
- incoming_msg_count: int | None = None,
1072
+ incoming_msg_count: int | bytes | bytearray | None = None,
1073
1073
  outgoing_msg_count: int | None = None,
1074
1074
  incoming_data_size: int | None = None,
1075
1075
  outgoing_data_size: int | None = None,
@@ -1082,6 +1082,10 @@ class ILQueueFlow(_AutoAccessor):
1082
1082
  self.outgoingDataSize = 0
1083
1083
  self.depth = 0
1084
1084
 
1085
+ if isinstance(incoming_msg_count, (bytes, bytearray)):
1086
+ ba = incoming_msg_count
1087
+ incoming_msg_count = None
1088
+
1085
1089
  if ba is None:
1086
1090
  if incoming_msg_count is not None:
1087
1091
  self.incomingMsgCount = incoming_msg_count
@@ -1208,9 +1212,8 @@ class ILQmgrProperty(_AutoAccessor):
1208
1212
  self.acceptWaitTimeout = -1
1209
1213
  self.sendTimeout = 10
1210
1214
  self.recvWaitTimeout = 86400
1211
- self.acceptPoolSize = 1
1212
- self.eventPoolSize = 1
1213
- self.sessionPerThread = 10
1215
+ self.volumeMonitorInterval = 300
1216
+ self.volumeMonitorSizeLimit = 104857600
1214
1217
  self.logLevelSystem = 4
1215
1218
  self.logFileSizeSystem = 4194304
1216
1219
  self.logFileCountSystem = 5
@@ -1227,7 +1230,6 @@ class ILQmgrProperty(_AutoAccessor):
1227
1230
  self.aclEnabled = False
1228
1231
  self.aclType = 0
1229
1232
  self.deadLetterQueueName = ILC.MIMQ_DLQ_NAME
1230
- self.useAsync = False
1231
1233
  self.deadSessionKeepDuration = 600
1232
1234
  self.deadSessionMaxCount = 1000
1233
1235
 
@@ -1270,9 +1272,6 @@ class ILQmgrProperty(_AutoAccessor):
1270
1272
  offset += 20
1271
1273
  self.autoStart = start_mode.upper() == "AUTO"
1272
1274
  offset += 23
1273
- tmp = ba_pick_string(ba, offset, 1)
1274
- if tmp:
1275
- self.useAsync = tmp.lower() == "a"
1276
1275
  offset += 2
1277
1276
  tmp = ba_pick_string(ba, offset, 10)
1278
1277
  if tmp:
@@ -1301,11 +1300,12 @@ class ILQmgrProperty(_AutoAccessor):
1301
1300
  offset += 10
1302
1301
  self.recvWaitTimeout = ba_pick_int(ba, offset, 10)
1303
1302
  offset += 10
1304
- self.acceptPoolSize = ba_pick_int(ba, offset, 10)
1305
- offset += 10
1306
- self.eventPoolSize = ba_pick_int(ba, offset, 10)
1303
+ offset += 20
1304
+ self.volumeMonitorInterval = ba_pick_int(ba, offset, 10)
1307
1305
  offset += 10
1308
- offset += 50
1306
+ self.volumeMonitorSizeLimit = ba_pick_long(ba, offset, 20)
1307
+ offset += 20
1308
+ offset += 20
1309
1309
  self.logLevelSystem = ba_pick_int(ba, offset, 2)
1310
1310
  offset += 2
1311
1311
  self.logFileSizeSystem = ba_pick_int(ba, offset, 15)
@@ -1336,7 +1336,6 @@ class ILQmgrProperty(_AutoAccessor):
1336
1336
  offset += 2
1337
1337
  self.aclType = ba_pick_int(ba, offset, 2)
1338
1338
  offset += 2
1339
- self.sessionPerThread = ba_pick_int(ba, offset, 10)
1340
1339
  offset += 10
1341
1340
  self.deadLetterQueueName = ba_pick_string(ba, offset, 32)
1342
1341
  offset += 32
@@ -1361,7 +1360,6 @@ class ILQmgrProperty(_AutoAccessor):
1361
1360
  ba_merge("AUTO" if self.autoStart else "MANUAL", ba, offset)
1362
1361
  offset += 20
1363
1362
  offset += 23
1364
- ba_merge("a" if self.useAsync else "s", ba, offset)
1365
1363
  offset += 2
1366
1364
  ba_merge(self.deadSessionKeepDuration, ba, offset)
1367
1365
  offset += 10
@@ -1380,11 +1378,12 @@ class ILQmgrProperty(_AutoAccessor):
1380
1378
  offset += 10
1381
1379
  ba_merge(self.recvWaitTimeout, ba, offset)
1382
1380
  offset += 10
1383
- ba_merge(self.acceptPoolSize, ba, offset)
1384
- offset += 10
1385
- ba_merge(self.eventPoolSize, ba, offset)
1381
+ offset += 20
1382
+ ba_merge(self.volumeMonitorInterval, ba, offset)
1386
1383
  offset += 10
1387
- offset += 50
1384
+ ba_merge(self.volumeMonitorSizeLimit, ba, offset)
1385
+ offset += 20
1386
+ offset += 20
1388
1387
  ba_merge(self.logLevelSystem, ba, offset)
1389
1388
  offset += 2
1390
1389
  ba_merge(self.logFileSizeSystem, ba, offset)
@@ -1415,7 +1414,6 @@ class ILQmgrProperty(_AutoAccessor):
1415
1414
  offset += 2
1416
1415
  ba_merge(self.aclType, ba, offset)
1417
1416
  offset += 2
1418
- ba_merge(self.sessionPerThread, ba, offset)
1419
1417
  offset += 10
1420
1418
  ba_merge(self.deadLetterQueueName, ba, offset)
1421
1419
  offset += 32
@@ -1455,27 +1453,6 @@ class ILQmgrProperty(_AutoAccessor):
1455
1453
  _validate_log_level(value)
1456
1454
  self.logLevelChannel = value
1457
1455
 
1458
- def set_accept_pool_size(self, size: int) -> None:
1459
- if size < 1 or size > 9:
1460
- raise UnsupportedOperationException(
1461
- f"[{size}] is an unacceptable value. (acceptable value range: 1~9)"
1462
- )
1463
- self.acceptPoolSize = size
1464
-
1465
- def set_event_pool_size(self, size: int) -> None:
1466
- if size < 1 or size > 99:
1467
- raise UnsupportedOperationException(
1468
- f"[{size}] is an unacceptable value. (acceptable value range: 1~99)"
1469
- )
1470
- self.eventPoolSize = size
1471
-
1472
- def set_session_per_thread(self, count: int) -> None:
1473
- if count < 1:
1474
- raise UnsupportedOperationException(
1475
- f"[{count}] is an unacceptable value. (acceptable value range: 1~)"
1476
- )
1477
- self.sessionPerThread = count
1478
-
1479
1456
  def set_acl_type(self, value: int) -> None:
1480
1457
  if value not in (ILC.MIMQ_ACL_BY_BLACKLIST, ILC.MIMQ_ACL_BY_WHITELIST):
1481
1458
  raise UnsupportedOperationException(
@@ -1492,18 +1469,6 @@ class ILQmgrProperty(_AutoAccessor):
1492
1469
  return mp
1493
1470
 
1494
1471
  def __str__(self) -> str:
1495
- if self.useAsync:
1496
- tcp_lsr = (
1497
- "\tTCP-LISTENER(Mode:ASYNC,AcceptPool:"
1498
- + str(self.acceptPoolSize)
1499
- + ", EventPool:"
1500
- + str(self.eventPoolSize)
1501
- + ", SessionPerThread:"
1502
- + str(self.sessionPerThread)
1503
- + ")\n"
1504
- )
1505
- else:
1506
- tcp_lsr = "\tTCP-LISTENER(Mode:SYNC)\n"
1507
1472
  return (
1508
1473
  "\n"
1509
1474
  + "\tNAME(" + self.name + ") STATUS(" + self.get_status_string() + ")\n"
@@ -1520,7 +1485,8 @@ class ILQmgrProperty(_AutoAccessor):
1520
1485
  + "files, " + ILC.get_log_level_string(self.logLevelChannel) + ")\n"
1521
1486
  + "\tCHANNEL-RETRY-INTERVAL(" + str(self.channelRetryTimeInterval)
1522
1487
  + "sec) SOCKET-TIMEOUT(" + str(self.recvWaitTimeout) + ")\n"
1523
- + tcp_lsr
1488
+ + "\tVOLUME-MONITOR(Interval:" + str(self.volumeMonitorInterval)
1489
+ + "sec, SizeLimit:" + str(self.volumeMonitorSizeLimit) + "bytes)\n"
1524
1490
  + "\tACL(" + ("ON" if self.aclEnabled else "OFF") + ") ACL-TYPE(" + self.get_acl_type_string() + ")\n"
1525
1491
  + "\tDEADSESSION(Max " + str(self.deadSessionMaxCount) + "ea, " + str(self.deadSessionKeepDuration) + "sec)\n"
1526
1492
  + "\tVERSION(" + self.version + ")\n"
@@ -1769,8 +1735,6 @@ class ILServiceProperty(_AutoAccessor):
1769
1735
  self.version = ""
1770
1736
  self.timeoutSocketConnect = 10
1771
1737
  self.timeoutSocketRecv = 600
1772
- self.poolSizeAccept = 1
1773
- self.poolSizeEvent = 1
1774
1738
  self.logLevelSystem = 4
1775
1739
  self.logFileSizeSystem = 4194304
1776
1740
  self.logFileCountSystem = 5
@@ -1808,10 +1772,7 @@ class ILServiceProperty(_AutoAccessor):
1808
1772
  offset += 10
1809
1773
  self.timeoutSocketRecv = ba_pick_int(ba, offset, 10)
1810
1774
  offset += 10
1811
- self.poolSizeAccept = ba_pick_int(ba, offset, 10)
1812
- offset += 10
1813
- self.poolSizeEvent = ba_pick_int(ba, offset, 10)
1814
- offset += 10
1775
+ offset += 20
1815
1776
  self.logLevelSystem = ba_pick_int(ba, offset, 2)
1816
1777
  offset += 2
1817
1778
  self.logFileSizeSystem = ba_pick_int(ba, offset, 15)
@@ -1856,10 +1817,7 @@ class ILServiceProperty(_AutoAccessor):
1856
1817
  offset += 10
1857
1818
  ba_merge(self.timeoutSocketRecv, ba, offset)
1858
1819
  offset += 10
1859
- ba_merge(self.poolSizeAccept, ba, offset)
1860
- offset += 10
1861
- ba_merge(self.poolSizeEvent, ba, offset)
1862
- offset += 10
1820
+ offset += 20
1863
1821
  ba_merge(self.logLevelSystem, ba, offset)
1864
1822
  offset += 2
1865
1823
  ba_merge(self.logFileSizeSystem, ba, offset)
@@ -1912,20 +1870,6 @@ class ILServiceProperty(_AutoAccessor):
1912
1870
  f"[{log_type}] is an unacceptable value. (acceptable value list: [0 | 1])"
1913
1871
  )
1914
1872
 
1915
- def set_pool_size_accept(self, size: int) -> None:
1916
- if size < 1 or size > 9:
1917
- raise UnsupportedOperationException(
1918
- f"[{size}] is an unacceptable value. (acceptable value range: 1~9)"
1919
- )
1920
- self.poolSizeAccept = size
1921
-
1922
- def set_pool_size_event(self, size: int) -> None:
1923
- if size < 1 or size > 99:
1924
- raise UnsupportedOperationException(
1925
- f"[{size}] is an unacceptable value. (acceptable value range: 1~99)"
1926
- )
1927
- self.poolSizeEvent = size
1928
-
1929
1873
  def set_timeout_socket_connect(self, sec: int) -> None:
1930
1874
  if sec < -1:
1931
1875
  raise UnsupportedOperationException(
@@ -1958,7 +1902,6 @@ class ILServiceProperty(_AutoAccessor):
1958
1902
  + ") ROLLING(" + str(self.logFileSizeSystem) + "bytes, " + str(self.logFileCountSystem) + "files)\n"
1959
1903
  + "\tLOGGER TYPE(CLI) LEVEL(" + ILC.get_log_level_string(self.logLevelClient)
1960
1904
  + ") ROLLING(" + str(self.logFileSizeClient) + "bytes, " + str(self.logFileCountClient) + "files)\n"
1961
- + "\tTCPLSR ACCEPT(" + str(self.poolSizeAccept) + "threads) EVENT(" + str(self.poolSizeEvent) + "threads)\n"
1962
1905
  + "\tTCPSOCKET TIMEOUT(" + str(self.timeoutSocketRecv) + "sec)\n"
1963
1906
  + "\tACL(" + ("ON" if self.aclEnabled else "OFF") + ") ACL-TYPE(" + ("BLACKLIST" if self.aclType == ILC.MIMQ_ACL_BY_BLACKLIST else "WHITELIST" if self.aclType == ILC.MIMQ_ACL_BY_WHITELIST else "UNKNOWN") + ")\n"
1964
1907
  + "\tRELAY-TYPE(" + ("HUB" if self.is_hub() else "SPOKE") + ") NAME(" + self.name + ") HUB(" + self.hubIp + ":" + str(self.hubPort) + ")\n"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jetstream-api
3
- Version: 0.1.0
3
+ Version: 0.1.2
4
4
  Summary: Python client API for iLink M.O.M. (Message Oriented Middleware)
5
5
  Author: snowjeans
6
6
  License: Boost Software License - Version 1.0 - August 17th, 2003
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "jetstream-api"
7
- version = "0.1.0"
7
+ version = "0.1.2"
8
8
  description = "Python client API for iLink M.O.M. (Message Oriented Middleware)"
9
9
  authors = [{name = "snowjeans"}]
10
10
  readme = "README.md"
File without changes
File without changes
File without changes