11using System . Text . Json ;
22using Backend . Utils ;
33using Boundaries ;
4+ using Microsoft . AspNetCore . Mvc ;
45
56namespace Backend . Endpoints ;
67
78public static class BoundaryEndpoints
89{
9- public static void MapBoundaryEndpoints ( this IEndpointRouteBuilder endpoints , RdfoxApi . ConnectionSettings connectionSettings )
10+ public static void MapBoundaryEndpoints ( this IEndpointRouteBuilder endpoints )
1011 {
1112 #region Boundaries
1213 //Update boundary
13- endpoints . MapPost ( "/commissioning-package/{packageId}/update-boundary/{nodeId}" , async ( string packageId , string nodeId ) =>
14+ endpoints . MapPost ( "/commissioning-package/{packageId}/update-boundary/{nodeId}" , async ( string packageId , string nodeId , [ FromServices ] IRdfoxApi rdfoxApi ) =>
1415 {
1516 packageId = Uri . UnescapeDataString ( packageId ) ;
1617 nodeId = Uri . UnescapeDataString ( nodeId ) ;
1718
18- if ( ! await QueryUtils . CommissioningPackageExists ( packageId , connectionSettings ) )
19+ if ( ! await QueryUtils . CommissioningPackageExists ( packageId , rdfoxApi ) )
1920 {
2021 return Results . NotFound ( $ "Commissioning package { packageId } not found.") ;
2122 }
2223
23- var isSelectedInternal = await QueryUtils . IsSelectedInternalOf ( packageId , nodeId , connectionSettings ) ;
24- var isBoundary = await QueryUtils . IsBoundaryOf ( packageId , nodeId , connectionSettings ) ;
24+ var isSelectedInternal = await QueryUtils . IsSelectedInternalOf ( packageId , nodeId , rdfoxApi ) ;
25+ var isBoundary = await QueryUtils . IsBoundaryOf ( packageId , nodeId , rdfoxApi ) ;
2526
2627 if ( isSelectedInternal )
27- await QueryUtils . DeleteIsSelectedInternalOf ( packageId , nodeId , connectionSettings ) ;
28+ await QueryUtils . DeleteIsSelectedInternalOf ( packageId , nodeId , rdfoxApi ) ;
2829
2930 if ( isBoundary )
3031 {
31- await QueryUtils . DeleteIsBoundaryOf ( packageId , nodeId , connectionSettings ) ;
32+ await QueryUtils . DeleteIsBoundaryOf ( packageId , nodeId , rdfoxApi ) ;
3233 }
3334 else
3435 {
35- await QueryUtils . AddIsBoundaryOf ( packageId , nodeId , connectionSettings ) ;
36+ await QueryUtils . AddIsBoundaryOf ( packageId , nodeId , rdfoxApi ) ;
3637 }
3738
3839 return Results . Ok ( ) ;
3940 } ) . WithTags ( "Boundary" ) ;
4041
4142
42- // Add node as boundary
43- endpoints . MapPost ( "/commissioning-package/{packageId}/boundary/{nodeId}" , async ( string packageId , string nodeId ) =>
44- {
45- packageId = Uri . UnescapeDataString ( packageId ) ;
46- nodeId = Uri . UnescapeDataString ( nodeId ) ;
47-
48- if ( ! await QueryUtils . CommissioningPackageExists ( packageId , connectionSettings ) )
49- {
50- return Results . NotFound ( $ "Commissioning package { packageId } not found.") ;
51- }
52-
53- var data = $@ "
54- <{ nodeId } > { PropertiesProvider . isBoundaryOf } <{ packageId } > ." ;
55-
56- await RdfoxApi . LoadData ( connectionSettings , data ) ;
57-
58- return Results . Ok ( $ "Triple with subject { packageId } and object { nodeId } inserted successfully.") ;
59- } ) . WithTags ( "Boundary" ) ;
60-
61-
6243 // Remove node as boundary
63- endpoints . MapDelete ( "/commissioning-package/{packageId}/boundary/{nodeId}" , async ( string packageId , string nodeId ) =>
44+ endpoints . MapDelete ( "/commissioning-package/{packageId}/boundary/{nodeId}" , async ( string packageId , string nodeId , [ FromServices ] IRdfoxApi rdfoxApi ) =>
6445 {
6546 packageId = Uri . UnescapeDataString ( packageId ) ;
6647 nodeId = Uri . UnescapeDataString ( nodeId ) ;
6748
68- if ( ! await QueryUtils . CommissioningPackageExists ( packageId , connectionSettings ) )
49+ if ( ! await QueryUtils . CommissioningPackageExists ( packageId , rdfoxApi ) )
6950 {
7051 return Results . NotFound ( $ "Commissioning package { packageId } not found.") ;
7152 }
@@ -74,50 +55,50 @@ public static void MapBoundaryEndpoints(this IEndpointRouteBuilder endpoints, Rd
7455 <{ nodeId } > { PropertiesProvider . isBoundaryOf } <{ packageId } > .
7556 " ;
7657
77- await RdfoxApi . DeleteData ( connectionSettings , data ) ;
58+ await rdfoxApi . DeleteData ( data ) ;
7859
7960 return Results . Ok ( $ "Triple for package { packageId } and node { nodeId } deleted successfully.") ;
8061 } ) . WithTags ( "Boundary" ) ;
8162 #endregion
8263
8364 #region Internal
8465 //Update selected internal
85- endpoints . MapPost ( "/commissioning-package/{packageId}/update-internal/{nodeId}" , async ( string packageId , string nodeId ) =>
66+ endpoints . MapPost ( "/commissioning-package/{packageId}/update-internal/{nodeId}" , async ( string packageId , string nodeId , [ FromServices ] IRdfoxApi rdfoxApi ) =>
8667 {
8768 packageId = Uri . UnescapeDataString ( packageId ) ;
8869 nodeId = Uri . UnescapeDataString ( nodeId ) ;
8970
90- if ( ! await QueryUtils . CommissioningPackageExists ( packageId , connectionSettings ) )
71+ if ( ! await QueryUtils . CommissioningPackageExists ( packageId , rdfoxApi ) )
9172 {
9273 return Results . NotFound ( $ "Commissioning package { packageId } not found.") ;
9374 }
9475
95- var isSelectedInternal = await QueryUtils . IsSelectedInternalOf ( packageId , nodeId , connectionSettings ) ;
96- var isBoundary = await QueryUtils . IsBoundaryOf ( packageId , nodeId , connectionSettings ) ;
76+ var isSelectedInternal = await QueryUtils . IsSelectedInternalOf ( packageId , nodeId , rdfoxApi ) ;
77+ var isBoundary = await QueryUtils . IsBoundaryOf ( packageId , nodeId , rdfoxApi ) ;
9778
9879 if ( isBoundary )
99- await QueryUtils . DeleteIsBoundaryOf ( packageId , nodeId , connectionSettings ) ;
80+ await QueryUtils . DeleteIsBoundaryOf ( packageId , nodeId , rdfoxApi ) ;
10081
10182 if ( isSelectedInternal )
10283 {
103- await QueryUtils . DeleteIsSelectedInternalOf ( packageId , nodeId , connectionSettings ) ;
84+ await QueryUtils . DeleteIsSelectedInternalOf ( packageId , nodeId , rdfoxApi ) ;
10485 }
10586 else
10687 {
107- await QueryUtils . AddIsSelectedInternalOf ( packageId , nodeId , connectionSettings ) ;
88+ await QueryUtils . AddIsSelectedInternalOf ( packageId , nodeId , rdfoxApi ) ;
10889 }
10990
11091 return Results . Ok ( ) ;
11192 } ) . WithTags ( "Internal" ) ;
11293
11394
11495 //Add node as internal
115- endpoints . MapPost ( "/commissioning-package/{packageId}/internal/{nodeId}" , async ( string packageId , string nodeId ) =>
96+ endpoints . MapPost ( "/commissioning-package/{packageId}/internal/{nodeId}" , async ( string packageId , string nodeId , [ FromServices ] IRdfoxApi rdfoxApi ) =>
11697 {
11798 packageId = Uri . UnescapeDataString ( packageId ) ;
11899 nodeId = Uri . UnescapeDataString ( nodeId ) ;
119100
120- if ( ! await QueryUtils . CommissioningPackageExists ( packageId , connectionSettings ) )
101+ if ( ! await QueryUtils . CommissioningPackageExists ( packageId , rdfoxApi ) )
121102 {
122103 return Results . NotFound ( $ "Commissioning package { packageId } not found.") ;
123104 }
@@ -126,19 +107,19 @@ public static void MapBoundaryEndpoints(this IEndpointRouteBuilder endpoints, Rd
126107 <{ nodeId } > { PropertiesProvider . isInPackage } <{ packageId } > .
127108 " ;
128109
129- await RdfoxApi . LoadData ( connectionSettings , data ) ;
110+ await rdfoxApi . LoadData ( data ) ;
130111
131112 return Results . Ok ( $ "Triple for package { packageId } and node { nodeId } inserted successfully.") ;
132113 } ) . WithTags ( "Internal" ) ;
133114
134115
135116 // Remove node as internal
136- endpoints . MapDelete ( "/commissioning-package/{packageId}/internal/{nodeId}" , async ( string packageId , string nodeId ) =>
117+ endpoints . MapDelete ( "/commissioning-package/{packageId}/internal/{nodeId}" , async ( string packageId , string nodeId , [ FromServices ] IRdfoxApi rdfoxApi ) =>
137118 {
138119 packageId = Uri . UnescapeDataString ( packageId ) ;
139120 nodeId = Uri . UnescapeDataString ( nodeId ) ;
140121
141- if ( ! await QueryUtils . CommissioningPackageExists ( packageId , connectionSettings ) )
122+ if ( ! await QueryUtils . CommissioningPackageExists ( packageId , rdfoxApi ) )
142123 {
143124 return Results . NotFound ( $ "Commissioning package { packageId } not found.") ;
144125 }
@@ -147,21 +128,21 @@ public static void MapBoundaryEndpoints(this IEndpointRouteBuilder endpoints, Rd
147128 <{ nodeId } > { PropertiesProvider . isInPackage } <{ packageId } > .
148129 " ;
149130
150- await RdfoxApi . DeleteData ( connectionSettings , data ) ;
131+ await rdfoxApi . DeleteData ( data ) ;
151132
152133 return Results . Ok ( $ "Triple for package { packageId } and node { nodeId } deleted successfully.") ;
153134 } ) . WithTags ( "Internal" ) ;
154135 #endregion
155136
156137 #region Nodes
157138 //Get adjacent nodes
158- endpoints . MapGet ( "/nodes/{nodeId}/adjacent" , async ( string nodeId ) =>
139+ endpoints . MapGet ( "/nodes/{nodeId}/adjacent" , async ( string nodeId , [ FromServices ] IRdfoxApi rdfoxApi ) =>
159140 {
160141 nodeId = Uri . UnescapeDataString ( nodeId ) ;
161142
162143 var query = $@ "SELECT ?neighbour WHERE {{ <{ nodeId } > { PropertiesProvider . adjacentTo } ?neighbour }}";
163144
164- var result = await RdfoxApi . QuerySparql ( connectionSettings , query ) ;
145+ var result = await rdfoxApi . QuerySparql ( query ) ;
165146
166147 var adjacentNodes = new List < string > ( ) ;
167148
0 commit comments