Skip to content

Commit 243ad24

Browse files
This release 1) adds support for multi-polygon geofences with disconnected territories, and 2) enables polygon exclusion zones within geofences for more accurate representation of real-world boundaries.
1 parent c4dcada commit 243ad24

File tree

85 files changed

+1005
-489
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

85 files changed

+1005
-489
lines changed

generator/ServiceModels/location/location-2020-11-19.api.json

Lines changed: 31 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1211,7 +1211,7 @@
12111211
},
12121212
"Base64EncodedGeobuf":{
12131213
"type":"blob",
1214-
"max":600000,
1214+
"max":700000,
12151215
"min":0,
12161216
"sensitive":true
12171217
},
@@ -1754,7 +1754,7 @@
17541754
],
17551755
"members":{
17561756
"Center":{"shape":"Position"},
1757-
"Radius":{"shape":"Double"}
1757+
"Radius":{"shape":"SensitiveDouble"}
17581758
},
17591759
"sensitive":true
17601760
},
@@ -1777,13 +1777,15 @@
17771777
"type":"string",
17781778
"max":3,
17791779
"min":3,
1780-
"pattern":"[A-Z]{3}"
1780+
"pattern":"[A-Z]{3}",
1781+
"sensitive":true
17811782
},
17821783
"CountryCode3OrEmpty":{
17831784
"type":"string",
17841785
"max":3,
17851786
"min":0,
1786-
"pattern":"[A-Z]{3}$|^"
1787+
"pattern":"[A-Z]{3}$|^",
1788+
"sensitive":true
17871789
},
17881790
"CountryCodeList":{
17891791
"type":"list",
@@ -2570,11 +2572,24 @@
25702572
"GeofenceGeometry":{
25712573
"type":"structure",
25722574
"members":{
2573-
"Polygon":{"shape":"LinearRings"},
2575+
"Polygon":{"shape":"GeofenceGeometryPolygonList"},
25742576
"Circle":{"shape":"Circle"},
2575-
"Geobuf":{"shape":"Base64EncodedGeobuf"}
2577+
"Geobuf":{"shape":"Base64EncodedGeobuf"},
2578+
"MultiPolygon":{"shape":"GeofenceGeometryMultiPolygonList"}
25762579
}
25772580
},
2581+
"GeofenceGeometryMultiPolygonList":{
2582+
"type":"list",
2583+
"member":{"shape":"LinearRings"},
2584+
"max":250,
2585+
"min":1
2586+
},
2587+
"GeofenceGeometryPolygonList":{
2588+
"type":"list",
2589+
"member":{"shape":"LinearRing"},
2590+
"max":250,
2591+
"min":1
2592+
},
25782593
"GetDevicePositionHistoryRequest":{
25792594
"type":"structure",
25802595
"required":[
@@ -3671,7 +3686,8 @@
36713686
"type":"double",
36723687
"box":true,
36733688
"max":10000000,
3674-
"min":0
3689+
"min":0,
3690+
"sensitive":true
36753691
},
36763692
"PricingPlan":{
36773693
"type":"string",
@@ -3738,7 +3754,8 @@
37383754
"type":"string",
37393755
"max":253,
37403756
"min":0,
3741-
"pattern":"([$\\-._+!*\\x{60}(),;/?:@=&\\w]|%([0-9a-fA-F?]{2}|[0-9a-fA-F?]?[*]))+"
3757+
"pattern":"([$\\-._+!*\\x{60}(),;/?:@=&\\w]|%([0-9a-fA-F?]{2}|[0-9a-fA-F?]?[*]))+",
3758+
"sensitive":true
37423759
},
37433760
"ResourceDescription":{
37443761
"type":"string",
@@ -4056,6 +4073,11 @@
40564073
"FilterCategories":{"shape":"FilterPlaceCategoryList"}
40574074
}
40584075
},
4076+
"SensitiveDouble":{
4077+
"type":"double",
4078+
"box":true,
4079+
"sensitive":true
4080+
},
40594081
"SensitiveString":{
40604082
"type":"string",
40614083
"sensitive":true
@@ -4196,6 +4218,7 @@
41964218
},
41974219
"Timestamp":{
41984220
"type":"timestamp",
4221+
"sensitive":true,
41994222
"timestampFormat":"iso8601"
42004223
},
42014224
"Token":{

generator/ServiceModels/location/location-2020-11-19.docs.json

Lines changed: 78 additions & 60 deletions
Large diffs are not rendered by default.

generator/ServiceModels/location/location-2020-11-19.normal.json

Lines changed: 92 additions & 66 deletions
Large diffs are not rendered by default.

sdk/code-analysis/ServiceAnalysis/LocationService/Generated/PropertyValueRules.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1116,7 +1116,7 @@
11161116
<property-value-rule>
11171117
<property>Amazon.LocationService.Model.GeofenceGeometry.Geobuf</property>
11181118
<min>0</min>
1119-
<max>600000</max>
1119+
<max>700000</max>
11201120
</property-value-rule>
11211121
<property-value-rule>
11221122
<property>Amazon.LocationService.Model.Leg.Distance</property>

sdk/src/Services/LocationService/Generated/Model/ApiKeyRestrictions.cs

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,18 @@ public partial class ApiKeyRestrictions
5757
/// <para>
5858
/// <c>geo:GetMap*</c> - Allows all actions needed for map rendering.
5959
/// </para>
60+
/// </li> <li>
61+
/// <para>
62+
/// <c>geo-maps:GetTile</c> - Allows retrieving map tiles.
63+
/// </para>
64+
/// </li> <li>
65+
/// <para>
66+
/// <c>geo-maps:GetStaticMap</c> - Allows retrieving static map images.
67+
/// </para>
68+
/// </li> <li>
69+
/// <para>
70+
/// <c>geo-maps:*</c> - Allows all actions related to map functionalities.
71+
/// </para>
6072
/// </li> </ul> </li> <li>
6173
/// <para>
6274
/// <b>Place actions</b>
@@ -77,6 +89,40 @@ public partial class ApiKeyRestrictions
7789
/// <para>
7890
/// <c>GetPlace</c> - Allows finding a place by place ID.
7991
/// </para>
92+
/// </li> <li>
93+
/// <para>
94+
/// <c>geo-places:Geocode</c> - Allows geocoding using place information.
95+
/// </para>
96+
/// </li> <li>
97+
/// <para>
98+
/// <c>geo-places:ReverseGeocode</c> - Allows reverse geocoding from location coordinates.
99+
/// </para>
100+
/// </li> <li>
101+
/// <para>
102+
/// <c>geo-places:SearchNearby</c> - Allows searching for places near a location.
103+
/// </para>
104+
/// </li> <li>
105+
/// <para>
106+
/// <c>geo-places:SearchText</c> - Allows searching for places based on text input.
107+
/// </para>
108+
/// </li> <li>
109+
/// <para>
110+
/// <c>geo-places:Autocomplete</c> - Allows auto-completion of place names based on text
111+
/// input.
112+
/// </para>
113+
/// </li> <li>
114+
/// <para>
115+
/// <c>geo-places:Suggest</c> - Allows generating suggestions for places based on partial
116+
/// input.
117+
/// </para>
118+
/// </li> <li>
119+
/// <para>
120+
/// <c>geo-places:GetPlace</c> - Allows finding a place by its ID.
121+
/// </para>
122+
/// </li> <li>
123+
/// <para>
124+
/// <c>geo-places:*</c> - Allows all actions related to place services.
125+
/// </para>
80126
/// </li> </ul> </li> <li>
81127
/// <para>
82128
/// <b>Route actions</b>
@@ -89,6 +135,32 @@ public partial class ApiKeyRestrictions
89135
/// <para>
90136
/// <c>geo:CalculateRouteMatrix</c> - Allows calculating a matrix of routes.
91137
/// </para>
138+
/// </li> <li>
139+
/// <para>
140+
/// <c>geo-routes:CalculateRoutes</c> - Allows calculating multiple routes between points.
141+
/// </para>
142+
/// </li> <li>
143+
/// <para>
144+
/// <c>geo-routes:CalculateRouteMatrix</c> - Allows calculating a matrix of routes between
145+
/// points.
146+
/// </para>
147+
/// </li> <li>
148+
/// <para>
149+
/// <c>geo-routes:CalculateIsolines</c> - Allows calculating isolines for a given area.
150+
/// </para>
151+
/// </li> <li>
152+
/// <para>
153+
/// <c>geo-routes:OptimizeWaypoints</c> - Allows optimizing the order of waypoints in
154+
/// a route.
155+
/// </para>
156+
/// </li> <li>
157+
/// <para>
158+
/// <c>geo-routes:SnapToRoads</c> - Allows snapping a route to the nearest roads.
159+
/// </para>
160+
/// </li> <li>
161+
/// <para>
162+
/// <c>geo-routes:*</c> - Allows all actions related to routing functionalities.
163+
/// </para>
92164
/// </li> </ul> </li> </ul> <note>
93165
/// <para>
94166
/// You must use these strings exactly. For example, to provide access to map rendering,

sdk/src/Services/LocationService/Generated/Model/BatchEvaluateGeofencesError.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ internal bool IsSetError()
8484
/// 8601</a> format: <c>YYYY-MM-DDThh:mm:ss.sssZ</c>
8585
/// </para>
8686
/// </summary>
87-
[AWSProperty(Required=true)]
87+
[AWSProperty(Required=true, Sensitive=true)]
8888
public DateTime SampleTime
8989
{
9090
get { return this._sampleTime.GetValueOrDefault(); }

sdk/src/Services/LocationService/Generated/Model/BatchPutGeofenceRequestEntry.cs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -84,15 +84,16 @@ internal bool IsSetGeofenceProperties()
8484
/// <summary>
8585
/// Gets and sets the property Geometry.
8686
/// <para>
87-
/// Contains the details to specify the position of the geofence. Can be a polygon, a
88-
/// circle or a polygon encoded in Geobuf format. Including multiple selections will return
89-
/// a validation error.
87+
/// Contains the details to specify the position of the geofence. Can be a circle, a polygon,
88+
/// or a multipolygon. <c>Polygon</c> and <c>MultiPolygon</c> geometries can be defined
89+
/// using their respective parameters, or encoded in Geobuf format using the <c>Geobuf</c>
90+
/// parameter. Including multiple geometry types in the same request will return a validation
91+
/// error.
9092
/// </para>
9193
/// <note>
9294
/// <para>
93-
/// The <a href="https://docs.aws.amazon.com/location-geofences/latest/APIReference/API_GeofenceGeometry.html">
94-
/// geofence polygon</a> format supports a maximum of 1,000 vertices. The <a href="https://docs.aws.amazon.com/location-geofences/latest/APIReference/API_GeofenceGeometry.html">Geofence
95-
/// geobuf</a> format supports a maximum of 100,000 vertices.
95+
/// The geofence <c>Polygon</c> and <c>MultiPolygon</c> formats support a maximum of 1,000
96+
/// total vertices. The <c>Geobuf</c> format supports a maximum of 100,000 vertices.
9697
/// </para>
9798
/// </note>
9899
/// </summary>

sdk/src/Services/LocationService/Generated/Model/BatchPutGeofenceSuccess.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ public partial class BatchPutGeofenceSuccess
4646
/// 8601</a> format: <c>YYYY-MM-DDThh:mm:ss.sssZ</c>
4747
/// </para>
4848
/// </summary>
49-
[AWSProperty(Required=true)]
49+
[AWSProperty(Required=true, Sensitive=true)]
5050
public DateTime CreateTime
5151
{
5252
get { return this._createTime.GetValueOrDefault(); }
@@ -85,7 +85,7 @@ internal bool IsSetGeofenceId()
8585
/// 8601</a> format: <c>YYYY-MM-DDThh:mm:ss.sssZ</c>
8686
/// </para>
8787
/// </summary>
88-
[AWSProperty(Required=true)]
88+
[AWSProperty(Required=true, Sensitive=true)]
8989
public DateTime UpdateTime
9090
{
9191
get { return this._updateTime.GetValueOrDefault(); }

sdk/src/Services/LocationService/Generated/Model/BatchUpdateDevicePositionError.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ internal bool IsSetError()
8383
/// ISO 8601</a> format: <c>YYYY-MM-DDThh:mm:ss.sssZ</c>.
8484
/// </para>
8585
/// </summary>
86-
[AWSProperty(Required=true)]
86+
[AWSProperty(Required=true, Sensitive=true)]
8787
public DateTime SampleTime
8888
{
8989
get { return this._sampleTime.GetValueOrDefault(); }

sdk/src/Services/LocationService/Generated/Model/CalculateRouteMatrixRequest.cs

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ namespace Amazon.LocationService.Model
3131
{
3232
/// <summary>
3333
/// Container for the parameters to the CalculateRouteMatrix operation.
34-
/// <a href="https://docs.aws.amazon.com/location/latest/developerguide/calculate-route-matrix.html">
34+
/// <a href="https://docs.aws.amazon.com/location/previous/developerguide/calculate-route-matrix.html">
3535
/// Calculates a route matrix</a> given the following required parameters: <c>DeparturePositions</c>
3636
/// and <c>DestinationPositions</c>. <c>CalculateRouteMatrix</c> calculates routes and
3737
/// returns the travel time and travel distance from each departure position to each destination
@@ -61,7 +61,7 @@ namespace Amazon.LocationService.Model
6161
/// </para>
6262
/// <ul> <li>
6363
/// <para>
64-
/// <a href="https://docs.aws.amazon.com/location/latest/developerguide/departure-time.html">
64+
/// <a href="https://docs.aws.amazon.com/location/previous/developerguide/departure-time.html">
6565
/// Specifying a departure time</a> using either <c>DepartureTime</c> or <c>DepartNow</c>.
6666
/// This calculates routes based on predictive traffic data at the given time.
6767
/// </para>
@@ -72,7 +72,7 @@ namespace Amazon.LocationService.Model
7272
/// </para>
7373
/// </note> </li> <li>
7474
/// <para>
75-
/// <a href="https://docs.aws.amazon.com/location/latest/developerguide/travel-mode.html">Specifying
75+
/// <a href="https://docs.aws.amazon.com/location/previous/developerguide/travel-mode.html">Specifying
7676
/// a travel mode</a> using TravelMode sets the transportation mode used to calculate
7777
/// the routes. This also lets you specify additional route preferences in <c>CarModeOptions</c>
7878
/// if traveling by <c>Car</c>, or <c>TruckModeOptions</c> if traveling by <c>Truck</c>.
@@ -174,13 +174,13 @@ internal bool IsSetDepartNow()
174174
/// <important>
175175
/// <para>
176176
/// Depending on the data provider selected in the route calculator resource there may
177-
/// be additional restrictions on the inputs you can choose. See <a href="https://docs.aws.amazon.com/location/latest/developerguide/calculate-route-matrix.html#matrix-routing-position-limits">
177+
/// be additional restrictions on the inputs you can choose. See <a href="https://docs.aws.amazon.com/location/previous/developerguide/calculate-route-matrix.html#matrix-routing-position-limits">
178178
/// Position restrictions</a> in the <i>Amazon Location Service Developer Guide</i>.
179179
/// </para>
180180
/// </important> <note>
181181
/// <para>
182182
/// For route calculators that use Esri as the data provider, if you specify a departure
183-
/// that's not located on a road, Amazon Location <a href="https://docs.aws.amazon.com/location/latest/developerguide/snap-to-nearby-road.html">
183+
/// that's not located on a road, Amazon Location <a href="https://docs.aws.amazon.com/location/previous/developerguide/snap-to-nearby-road.html">
184184
/// moves the position to the nearest road</a>. The snapped value is available in the
185185
/// result in <c>SnappedDeparturePositions</c>.
186186
/// </para>
@@ -222,6 +222,7 @@ internal bool IsSetDeparturePositions()
222222
/// </para>
223223
/// </li> </ul>
224224
/// </summary>
225+
[AWSProperty(Sensitive=true)]
225226
public DateTime DepartureTime
226227
{
227228
get { return this._departureTime.GetValueOrDefault(); }
@@ -245,13 +246,13 @@ internal bool IsSetDepartureTime()
245246
/// <important>
246247
/// <para>
247248
/// Depending on the data provider selected in the route calculator resource there may
248-
/// be additional restrictions on the inputs you can choose. See <a href="https://docs.aws.amazon.com/location/latest/developerguide/calculate-route-matrix.html#matrix-routing-position-limits">
249+
/// be additional restrictions on the inputs you can choose. See <a href="https://docs.aws.amazon.com/location/previous/developerguide/calculate-route-matrix.html#matrix-routing-position-limits">
249250
/// Position restrictions</a> in the <i>Amazon Location Service Developer Guide</i>.
250251
/// </para>
251252
/// </important> <note>
252253
/// <para>
253254
/// For route calculators that use Esri as the data provider, if you specify a destination
254-
/// that's not located on a road, Amazon Location <a href="https://docs.aws.amazon.com/location/latest/developerguide/snap-to-nearby-road.html">
255+
/// that's not located on a road, Amazon Location <a href="https://docs.aws.amazon.com/location/previous/developerguide/snap-to-nearby-road.html">
255256
/// moves the position to the nearest road</a>. The snapped value is available in the
256257
/// result in <c>SnappedDestinationPositions</c>.
257258
/// </para>
@@ -298,7 +299,7 @@ internal bool IsSetDistanceUnit()
298299
/// <summary>
299300
/// Gets and sets the property Key.
300301
/// <para>
301-
/// The optional <a href="https://docs.aws.amazon.com/location/latest/developerguide/using-apikeys.html">API
302+
/// The optional <a href="https://docs.aws.amazon.com/location/previous/developerguide/using-apikeys.html">API
302303
/// key</a> to authorize the request.
303304
/// </para>
304305
/// </summary>
@@ -345,7 +346,7 @@ internal bool IsSetKey()
345346
/// </para>
346347
///
347348
/// <para>
348-
/// For more information about using Grab as a data provider, see <a href="https://docs.aws.amazon.com/location/latest/developerguide/grab.html">GrabMaps</a>
349+
/// For more information about using Grab as a data provider, see <a href="https://docs.aws.amazon.com/location/previous/developerguide/grab.html">GrabMaps</a>
349350
/// in the <i>Amazon Location Service Developer Guide</i>.
350351
/// </para>
351352
/// </note>

0 commit comments

Comments
 (0)