@@ -641,6 +641,24 @@ an [=origin=] |origin|, perform the following steps. They return a [=boolean=].
641
641
642
642
</div>
643
643
644
+ <div algorithm>
645
+ To <dfn export>obtain the Private Aggregation coordinator</dfn> given a
646
+ {{USVString}} |originString|, perform the following steps. They return an
647
+ [=aggregation coordinator=] or a {{DOMException}} .
648
+
649
+ 1. Let |url| be the result of running the [=URL parser=] on |originString|.
650
+ 1. If |url| is failure or null, return a new {{DOMException}} with name
651
+ "`SyntaxError`".
652
+
653
+ Issue: Consider throwing an error if the path is not empty.
654
+ 1. Let |origin| be |url|'s [=url/origin=] .
655
+ 1. If the result of [=determining if an origin is an aggregation coordinator=]
656
+ given |origin| is false, return a new {{DOMException}} with name
657
+ "`DataError`".
658
+ 1. Return |origin|.
659
+
660
+ </div>
661
+
644
662
<div algorithm>
645
663
To <dfn export>set the aggregation coordinator for a batching scope</dfn> given
646
664
an [=origin=] |origin| and a [=batching scope=] |batchingScope|:
@@ -1513,8 +1531,8 @@ following steps at the end of the scope nested under step 5 ("Validate the given
1513
1531
<div algorithm="protected-audience-joinadig-monkey-patch">
1514
1532
17. If |group|["{{AuctionAdInterestGroup/privateAggregationConfig}}"]
1515
1533
[=map/exists=] :
1516
- 1. Let |aggregationCoordinator| be the result of [=obtaining the Private
1517
- Aggregation coordinator =] given
1534
+ 1. Let |aggregationCoordinator| be the result of [=obtaining the coordinator
1535
+ from a Private Aggregation config =] given
1518
1536
|group|["{{AuctionAdInterestGroup/privateAggregationConfig}}"] .
1519
1537
1. If |aggregationCoordinator| is a {{DOMException}} , then
1520
1538
[=exception/throw=] |aggregationCoordinator|.
@@ -1610,8 +1628,8 @@ modified to add the following steps just before the last step ("Return
1610
1628
: [=debug details/key=]
1611
1629
:: |debugKey|
1612
1630
1. If |config|["{{AuctionAdConfig/privateAggregationConfig}}"] [=map/exists=] :
1613
- 1. Let |aggregationCoordinator| be the result of [=obtaining the Private
1614
- Aggregation coordinator =] given
1631
+ 1. Let |aggregationCoordinator| be the result of [=obtaining the coordinator
1632
+ from a Private Aggregation config =] given
1615
1633
|config|["{{AuctionAdConfig/privateAggregationConfig}}"] .
1616
1634
1. If |aggregationCoordinator| is a {{DOMException}} , return failure.
1617
1635
1. Set <var ignore> auctionConfig</var> 's [=auction config/seller Private
@@ -1781,8 +1799,7 @@ steps are modified to add the following case at the end of the "Switch on
1781
1799
1. If |value|["`aggregationCoordinatorOrigin`"] [=map/exists=] :
1782
1800
1. If |value|["`aggregationCoordinatorOrigin`"] is not a [=string=] ,
1783
1801
jump to the step labeled Abort update.
1784
- 1. Let |aggregationCoordinator| be the result of [=obtain the Private
1785
- Aggregation coordinator from a string|obtaining the Private
1802
+ 1. Let |aggregationCoordinator| be the result of [=obtaining the Private
1786
1803
Aggregation coordinator=] given
1787
1804
|value|["`aggregationCoordinatorOrigin`"] .
1788
1805
1. If |aggregationCoordinator| is a {{DOMException}} , jump to the step
@@ -2119,37 +2136,17 @@ They return an [=interest group=] or null:
2119
2136
</div>
2120
2137
2121
2138
<div algorithm>
2122
- To <dfn>obtain the Private Aggregation coordinator </dfn> given a
2139
+ To <dfn>obtain the coordinator from a Private Aggregation config </dfn> given a
2123
2140
{{ProtectedAudiencePrivateAggregationConfig}} |config|, perform the following
2124
2141
steps. They return an [=aggregation coordinator=] , null or a {{DOMException}} .
2125
2142
2126
2143
1. If |config|["{{ProtectedAudiencePrivateAggregationConfig/aggregationCoordinatorOrigin}}"]
2127
2144
does not [=map/exist=] , return null.
2128
- 1. Return the result of [=obtain the Private Aggregation coordinator from a
2129
- string|obtaining the Private Aggregation coordinator=] given
2145
+ 1. Return the result of [=obtaining the Private Aggregation coordinator=] given
2130
2146
|config|["{{ProtectedAudiencePrivateAggregationConfig/aggregationCoordinatorOrigin}}"] .
2131
2147
2132
2148
</div>
2133
2149
2134
- <div algorithm>
2135
- To <dfn lt="obtain the Private Aggregation coordinator from a string">obtain the
2136
- Private Aggregation coordinator</dfn> given a {{USVString}} |originString|,
2137
- perform the following steps. They return an [=aggregation coordinator=] or a
2138
- {{DOMException}} .
2139
-
2140
- 1. Let |url| be the result of running the [=URL parser=] on |originString|.
2141
- 1. If |url| is failure or null, return a new {{DOMException}} with name
2142
- "`SyntaxError`".
2143
-
2144
- Issue: Consider throwing an error if the path is not empty.
2145
- 1. Let |origin| be |url|'s [=url/origin=] .
2146
- 1. If the result of [=determining if an origin is an aggregation coordinator=]
2147
- given |origin| is false, return a new {{DOMException}} with name
2148
- "`DataError`".
2149
- 1. Return |origin|.
2150
-
2151
- </div>
2152
-
2153
2150
Privacy considerations {#privacy-considerations}
2154
2151
================================================
2155
2152
0 commit comments