Expand media, network-stack, pear-platform, and scheduling module APIs
Add batch helpers, clear/count utilities, and management methods across content protection, FEC, flow shaper, circuit loom, trust gate, peer scheduler, and related modules. Co-authored-by: Cursor <[email protected]>
This commit is contained in:
@@ -81,6 +81,19 @@ class HyperP2PContentProtection extends EventEmitter {
|
||||
return payloads.map((p) => this.encryptSegment(p, keyId))
|
||||
}
|
||||
|
||||
decryptBatch (segments, keyId = null) {
|
||||
if (!Array.isArray(segments)) throw new Error('segments array required')
|
||||
return segments.map((s) => this.decryptSegment(s.data || s, keyId))
|
||||
}
|
||||
|
||||
hasKey (keyId) {
|
||||
return this._keys.has(String(keyId))
|
||||
}
|
||||
|
||||
keyCount () {
|
||||
return this._keys.size
|
||||
}
|
||||
|
||||
clearKeys () {
|
||||
const n = this._keys.size
|
||||
this._keys.clear()
|
||||
|
||||
@@ -93,6 +93,16 @@ class HyperP2PFecVideo extends EventEmitter {
|
||||
return entries.map((e) => this.encodeGroup(e.groupId, e.shards))
|
||||
}
|
||||
|
||||
clearAll () {
|
||||
const n = this._groups.size
|
||||
this._groups.clear()
|
||||
return n
|
||||
}
|
||||
|
||||
groupCount () {
|
||||
return this._groups.size
|
||||
}
|
||||
|
||||
getStats () {
|
||||
return mediaStats(this._stats, PROTOCOL, { groups: this._groups.size })
|
||||
}
|
||||
|
||||
@@ -87,6 +87,15 @@ class HyperP2PLatencyOptimizer extends EventEmitter {
|
||||
return n
|
||||
}
|
||||
|
||||
pathCount () {
|
||||
return this._paths.size
|
||||
}
|
||||
|
||||
measureBatch (entries) {
|
||||
if (!Array.isArray(entries)) throw new Error('entries must be an array')
|
||||
return entries.map((e) => this.measurePath(e.pathId, e.hops || []))
|
||||
}
|
||||
|
||||
getStats () {
|
||||
return mediaStats(this._stats, PROTOCOL, { paths: this._paths.size })
|
||||
}
|
||||
|
||||
@@ -90,6 +90,16 @@ class HyperP2POriginHybridBridge extends EventEmitter {
|
||||
return this._stats.originBytes + this._stats.p2pBytes
|
||||
}
|
||||
|
||||
clearStream (streamId) {
|
||||
return this._origins.delete(assertStreamId(streamId))
|
||||
}
|
||||
|
||||
clearAll () {
|
||||
const n = this._origins.size
|
||||
this._origins.clear()
|
||||
return n
|
||||
}
|
||||
|
||||
getStats () {
|
||||
return mediaStats(this._stats, PROTOCOL, {
|
||||
offloadRatio: this.p2pOffloadRatio(),
|
||||
|
||||
Reference in New Issue
Block a user