Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
c5d352a
added examples of delta protocol queries and property / containment c…
enikao Apr 3, 2025
6753635
added examples of all delta protocol messages
enikao Apr 5, 2025
df8cd32
renamed partition subscription messages
enikao Apr 5, 2025
ab2bfc2
updated to latest spec decisions:
enikao Apr 17, 2025
50c0d57
updated delta chunk (#358)
enikao May 12, 2025
ea6e18d
added ListPartitions query (#361)
enikao May 12, 2025
cb1313b
partially working integration test
enikao May 23, 2025
46cc0db
split DeltaProtocolPartitionCommandReceiver from DeltaProtocolPartiti…
enikao Jun 2, 2025
501cb73
added more command parameters for deleted entries in schema according…
enikao Jun 13, 2025
2e3cb45
mention deleted nodes ids instead of full nodes in events according t…
enikao Jun 13, 2025
47eac92
use JSON integer for index/count of available ids #374
enikao Jun 13, 2025
4969683
allow multiple protocolMessages #331 #332
enikao Jun 13, 2025
379c2c7
proper separation between WebSocketClient/Server and LionWebClient/Se…
enikao Jun 16, 2025
f599d06
use correct ParticipationId everywhere
enikao Jun 16, 2025
bdefce5
filter out delta events originating from own commands
enikao Jun 16, 2025
45f19d0
sprinkle a bit more async virus
enikao Jun 16, 2025
e380c5f
use better event names
enikao Jun 16, 2025
be6cfa0
use Debug.WriteLine() instead of Console.WriteLine()
enikao Jun 16, 2025
dae68d4
introduced IDeltaClientConnector to separate WebSocket from Delta pro…
enikao Jun 16, 2025
40519b6
introduced IDeltaRepositoryConnector to separate WebSocket from Delta…
enikao Jun 16, 2025
1c66a6c
cleanup
enikao Jun 16, 2025
e198528
forward debug output
enikao Jun 16, 2025
beaab6e
cleanup
enikao Jun 16, 2025
1d30324
added tests for server
enikao Jun 19, 2025
27d5495
moved delta messages to separate namespace
enikao Jun 20, 2025
32f81fd
adjusted delta messages to latest spec
enikao Jun 20, 2025
b0c0cae
renamed event ReferenceChanged.replaced{Target|ResolveInfo} -> old{Ta…
enikao Jun 20, 2025
cb2604f
add CommandResponse to delta schema
enikao Jun 23, 2025
2637f8a
changed eventSequenceNumber type from string to integer (symmetric to…
enikao Jun 23, 2025
edfbea9
regenerate languages
enikao Jun 27, 2025
aa45bab
add StructureName language
enikao Jun 27, 2025
5a5776e
cleaned up LionWebServer/Client, separated TestServer/Client
enikao Jun 27, 2025
4e1dd0b
started on SimpleClient tests
enikao Jun 27, 2025
cb26e56
use TestLanguage from lionweb-typescript instead of StructureName lan…
enikao Jun 30, 2025
cf113a2
added tests for simple property / containment / annotation / referenc…
enikao Jun 30, 2025
8e86b51
introduced IRepositoryConnector and IClientConnector, separated LionW…
enikao Jul 7, 2025
d23a21e
adjusted to changes in LionWeb-CSharp
enikao Jul 7, 2025
d041ec3
renamed LionWebServer -> LionWebRepository
enikao Jul 7, 2025
c2c71b1
moved LionWebClient and LionWebRepository to Protocol.Delta project
enikao Jul 7, 2025
951fdeb
moved messages under Message namespace
enikao Jul 7, 2025
0750124
more reliable test execution
enikao Jul 7, 2025
c3eafb5
proper handling of out-of-order events; made DeltaEventBase.SequenceN…
enikao Jul 7, 2025
c3ab0ee
implemented async query request/response
enikao Jul 7, 2025
e84c2c1
Delta variant of testchanges
joswarmer Jul 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 46 additions & 0 deletions delta/command/AddPartition.delta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
{
"messageKind": "AddPartition",
"newPartition": {
"nodes": [
{
"id": "a",
"classifier": {
"language": "myLang",
"version": "1",
"key": "myConcept"
},
"properties": [],
"containments": [],
"references": [],
"annotations": [],
"parent": null
},
{
"id": "b",
"classifier": {
"language": "myLang",
"version": "1",
"key": "myConcept"
},
"properties": [],
"containments": [],
"references": [],
"annotations": [],
"parent": "a"
}
]
},
"commandId": "cmdId",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
22 changes: 22 additions & 0 deletions delta/command/ChangeClassifier.delta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"messageKind": "ChangeClassifier",
"node": "nodeId",
"newClassifier": {
"language": "MyLang",
"version": "3",
"key": "MyClassifier"
},
"commandId": "cmdId",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
16 changes: 16 additions & 0 deletions delta/command/CommandResponse.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"messageKind": "CommandResponse",
"commandId": "cmdId",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
81 changes: 81 additions & 0 deletions delta/command/CompositeCommand.delta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
{
"messageKind": "CompositeCommand",
"parts": [
{
"messageKind": "AddProperty",
"node": "nodeId",
"property": {
"language": "MyLang",
"version": "4",
"key": "MyProperty"
},
"newValue": "hello",
"commandId": "cmdId0",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
},
{
"messageKind": "ChangeClassifier",
"node": "nodeId",
"newClassifier": {
"language": "MyLang",
"version": "3",
"key": "MyClassifier"
},
"commandId": "cmdId1",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
},
{
"messageKind": "CompositeCommand",
"parts": [
{
"messageKind": "DeleteChild",
"parent": "nodeId",
"containment": {
"language": "MyLang",
"version": "4",
"key": "MyContainment"
},
"index": 3,
"deletedChild": "a",
"commandId": "cmdId2"
}
],
"commandId": "cmdId3"
}
],
"commandId": "cmdId4",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
17 changes: 17 additions & 0 deletions delta/command/DeletePartition.delta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"messageKind": "DeletePartition",
"deletedPartition": "nodeId",
"commandId": "cmdId",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
48 changes: 48 additions & 0 deletions delta/command/annotation/AddAnnotation.delta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
{
"messageKind": "AddAnnotation",
"parent": "nodeId",
"newAnnotation": {
"nodes": [
{
"id": "a",
"classifier": {
"language": "myLang",
"version": "1",
"key": "myConcept"
},
"properties": [],
"containments": [],
"references": [],
"annotations": [],
"parent": null
},
{
"id": "b",
"classifier": {
"language": "myLang",
"version": "1",
"key": "myConcept"
},
"properties": [],
"containments": [],
"references": [],
"annotations": [],
"parent": "a"
}
]
},
"index": 3,
"commandId": "cmdId",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
19 changes: 19 additions & 0 deletions delta/command/annotation/DeleteAnnotation.delta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"messageKind": "DeleteAnnotation",
"parent": "nodeId",
"index": 3,
"deletedAnnotation": "deletedNodeId",
"commandId": "cmdId",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"messageKind": "MoveAndReplaceAnnotationFromOtherParent",
"newParent": "nodeId",
"newIndex": 3,
"replacedAnnotation": "replacedNodeId",
"movedAnnotation": "otherNodeId",
"commandId": "cmdId",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"messageKind": "MoveAndReplaceAnnotationInSameParent",
"newIndex": 3,
"replacedAnnotation": "replacedNodeId",
"movedAnnotation": "otherNodeId",
"commandId": "cmdId",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
19 changes: 19 additions & 0 deletions delta/command/annotation/MoveAnnotationFromOtherParent.delta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"messageKind": "MoveAnnotationFromOtherParent",
"newParent": "nodeId",
"newIndex": 3,
"movedAnnotation": "otherNodeId",
"commandId": "cmdId",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
18 changes: 18 additions & 0 deletions delta/command/annotation/MoveAnnotationInSameParent.delta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"messageKind": "MoveAnnotationInSameParent",
"newIndex": 3,
"movedAnnotation": "otherNodeId",
"commandId": "cmdId",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
49 changes: 49 additions & 0 deletions delta/command/annotation/ReplaceAnnotation.delta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
{
"messageKind": "ReplaceAnnotation",
"parent": "nodeId",
"newAnnotation": {
"nodes": [
{
"id": "a",
"classifier": {
"language": "myLang",
"version": "1",
"key": "myConcept"
},
"properties": [],
"containments": [],
"references": [],
"annotations": [],
"parent": null
},
{
"id": "b",
"classifier": {
"language": "myLang",
"version": "1",
"key": "myConcept"
},
"properties": [],
"containments": [],
"references": [],
"annotations": [],
"parent": "a"
}
]
},
"index": 3,
"replacedAnnotation": "replacedNodeId",
"commandId": "cmdId",
"protocolMessages": [
{
"kind": "msgKind",
"message": "Human message",
"data": [
{
"key": "dataKey",
"value": "dataValue"
}
]
}
]
}
Loading