Skip to content

Commit 241039b

Browse files
committed
Adjust ids for event messaging
1 parent 0b16893 commit 241039b

3 files changed

Lines changed: 48 additions & 5 deletions

File tree

src/AasxServerDB/EntityFrameworkPersistenceService.cs

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1516,14 +1516,15 @@ private Contracts.Events.EventPayload ReadEventMessages(Dictionary<string, strin
15161516
smOnly = eventData.SubmodelsOnly.Value.ToLower() == "true";
15171517
}
15181518

1519+
1520+
15191521
var diff = "";
15201522

15211523
if (time.IsNullOrEmpty())
15221524
{
15231525
diff = "init";
15241526
}
15251527

1526-
15271528
switch (requestType)
15281529
{
15291530
case DbEventRequestType.Status:
@@ -1550,6 +1551,41 @@ private Contracts.Events.EventPayload ReadEventMessages(Dictionary<string, strin
15501551
{
15511552
eventPayload.time = eventData.LastUpdate.Value;
15521553
}
1554+
1555+
1556+
bool pbee = false;
1557+
1558+
if (eventData.PublishBasicEventElement != null
1559+
&& eventData.PublishBasicEventElement.Value != null)
1560+
{
1561+
pbee = eventData.PublishBasicEventElement.Value.ToLower() == "true";
1562+
}
1563+
1564+
if (pbee)
1565+
{
1566+
var parentSubmodel = op.GetParentSubmodel();
1567+
if (parentSubmodel != null)
1568+
{
1569+
//if (eventData.IdShort != null)
1570+
//{
1571+
// sourceString = $"{Program.externalBlazor}/submodels/{Base64UrlEncoder.Encode(submodelId)}/events/{idShortPath}.{eventData.IdShort}";
1572+
//}
1573+
//var basicEventElementSourceString =
1574+
}
1575+
eventPayload.id = $"SOURCE_STRING_TO_BE_ADDED-{eventPayload.time}";
1576+
}
1577+
else
1578+
{
1579+
if (eventPayload.elements != null && eventPayload.elements.Count > 0)
1580+
{
1581+
foreach (var element in eventPayload.elements)
1582+
{
1583+
element.id = null;
1584+
}
1585+
}
1586+
1587+
}
1588+
15531589
if (diff != "status")
15541590
{
15551591
var timeStamp = DateTime.UtcNow;

src/AasxServerStandardBib/EventService.cs

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -789,6 +789,7 @@ public EventPayload CollectPayload(Dictionary<string, string> securityCondition,
789789
{
790790
statusEntry.dataschema = "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.1.0#/components/schemas/BasicEventElement";
791791
statusEntry.id = $"{basicEventElementSourceString}-{eventPayload.time}";
792+
eventPayload.id = statusEntry.id;
792793

793794
statusEntry.SetType(EventPayloadEntryType.Updated);
794795
statusEntry.source = basicEventElementSourceString;
@@ -820,19 +821,24 @@ public EventPayload CollectPayload(Dictionary<string, string> securityCondition,
820821
{
821822
statusEntry.dataschema = "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.1.0#/components/schemas/BasicEventElement";
822823
statusEntry.id = $"{basicEventElementSourceString}-{eventPayload.time}";
824+
eventPayload.id = statusEntry.id;
823825

824826
statusEntry.SetType(EventPayloadEntryType.Updated);
825827
statusEntry.source = basicEventElementSourceString;
826828
eventPayload.basiceventelementsemanticId = basicEventElementSemanticId;
827829
statusEntry.subject = null;
828830

829-
};
830-
eventPayload.elements =
831+
eventPayload.elements =
831832
[
832833
statusEntry,
833834
];
834835

835-
return eventPayload;
836+
return eventPayload;
837+
}
838+
else
839+
{
840+
//ToDo: Add element for non-basiceventelement keep alive message
841+
}
836842
}
837843
else
838844
{
@@ -852,6 +858,7 @@ public EventPayload CollectPayload(Dictionary<string, string> securityCondition,
852858
{
853859
statusEntry.dataschema = "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.1.0#/components/schemas/BasicEventElement";
854860
statusEntry.id = $"{basicEventElementSourceString}-{eventPayload.time}";
861+
eventPayload.id = statusEntry.id;
855862

856863
statusEntry.SetType(EventPayloadEntryType.Updated);
857864
statusEntry.source = basicEventElementSourceString;

src/Contracts/Events/EventPayload.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ public EventPayload(bool isREST)
5050
{
5151
specversion = SPEC_VERSION;
5252
datacontenttype = DATA_CONTENT_TYPE;
53-
id = $"{Guid.NewGuid()}";
53+
id = null;
5454

5555
time = "";
5656
transmitted = "";

0 commit comments

Comments
 (0)