Skip to content

Commit 87e5d24

Browse files
Adds options for configuring how MediaTailor conditions ads before inserting them into the content stream. Based on the new settings, MediaTailor will either transcode ads to match the content stream as it has in the past, or it will insert ads without first transcoding them.
1 parent 1472e3c commit 87e5d24

24 files changed

+725
-273
lines changed

generator/ServiceModels/mediatailor/mediatailor-2018-04-23.api.json

Lines changed: 89 additions & 70 deletions
Large diffs are not rendered by default.

generator/ServiceModels/mediatailor/mediatailor-2018-04-23.docs.json

Lines changed: 35 additions & 20 deletions
Large diffs are not rendered by default.

generator/ServiceModels/mediatailor/mediatailor-2018-04-23.normal.json

Lines changed: 198 additions & 163 deletions
Large diffs are not rendered by default.
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
/*
2+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License").
5+
* You may not use this file except in compliance with the License.
6+
* A copy of the License is located at
7+
*
8+
* http://aws.amazon.com/apache2.0
9+
*
10+
* or in the "license" file accompanying this file. This file is distributed
11+
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12+
* express or implied. See the License for the specific language governing
13+
* permissions and limitations under the License.
14+
*/
15+
16+
/*
17+
* Do not modify this file. This file is generated from the mediatailor-2018-04-23.normal.json service model.
18+
*/
19+
using System;
20+
using System.Collections.Generic;
21+
using System.Xml.Serialization;
22+
using System.Text;
23+
using System.IO;
24+
using System.Net;
25+
26+
using Amazon.Runtime;
27+
using Amazon.Runtime.Internal;
28+
29+
#pragma warning disable CS0612,CS0618,CS1570
30+
namespace Amazon.MediaTailor.Model
31+
{
32+
/// <summary>
33+
/// The setting that indicates what conditioning MediaTailor will perform on ads that
34+
/// the ad decision server (ADS) returns.
35+
/// </summary>
36+
public partial class AdConditioningConfiguration
37+
{
38+
private StreamingMediaFileConditioning _streamingMediaFileConditioning;
39+
40+
/// <summary>
41+
/// Gets and sets the property StreamingMediaFileConditioning.
42+
/// <para>
43+
/// For ads that have media files with streaming delivery, indicates what transcoding
44+
/// action MediaTailor it first receives these ads from the ADS. <c>TRANSCODE</c> indicates
45+
/// that MediaTailor must transcode the ads. <c>NONE</c> indicates that you have already
46+
/// transcoded the ads outside of MediaTailor and don't need them transcoded as part of
47+
/// the ad insertion workflow. For more information about ad conditioning see <a href="https://docs.aws.amazon.com/precondition-ads.html">https://docs.aws.amazon.com/precondition-ads.html</a>.
48+
/// </para>
49+
/// </summary>
50+
[AWSProperty(Required=true)]
51+
public StreamingMediaFileConditioning StreamingMediaFileConditioning
52+
{
53+
get { return this._streamingMediaFileConditioning; }
54+
set { this._streamingMediaFileConditioning = value; }
55+
}
56+
57+
// Check to see if StreamingMediaFileConditioning property is set
58+
internal bool IsSetStreamingMediaFileConditioning()
59+
{
60+
return this._streamingMediaFileConditioning != null;
61+
}
62+
63+
}
64+
}

sdk/src/Services/MediaTailor/Generated/Model/ConfigureLogsForPlaybackConfigurationRequest.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ namespace Amazon.MediaTailor.Model
3131
{
3232
/// <summary>
3333
/// Container for the parameters to the ConfigureLogsForPlaybackConfiguration operation.
34-
/// Amazon CloudWatch log settings for a playback configuration.
34+
/// Defines where AWS Elemental MediaTailor sends logs for the playback configuration.
3535
/// </summary>
3636
public partial class ConfigureLogsForPlaybackConfigurationRequest : AmazonMediaTailorRequest
3737
{
@@ -41,7 +41,7 @@ public partial class ConfigureLogsForPlaybackConfigurationRequest : AmazonMediaT
4141
/// <summary>
4242
/// Gets and sets the property PercentEnabled.
4343
/// <para>
44-
/// The percentage of session logs that MediaTailor sends to your Cloudwatch Logs account.
44+
/// The percentage of session logs that MediaTailor sends to your CloudWatch Logs account.
4545
/// For example, if your playback configuration has 1000 sessions and percentEnabled is
4646
/// set to <c>60</c>, MediaTailor sends logs for 600 of the sessions to CloudWatch Logs.
4747
/// MediaTailor decides at random which of the playback configuration sessions to send

sdk/src/Services/MediaTailor/Generated/Model/GetPlaybackConfigurationResponse.cs

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ namespace Amazon.MediaTailor.Model
3434
/// </summary>
3535
public partial class GetPlaybackConfigurationResponse : AmazonWebServiceResponse
3636
{
37+
private AdConditioningConfiguration _adConditioningConfiguration;
3738
private string _adDecisionServerUrl;
3839
private AvailSuppression _availSuppression;
3940
private Bumper _bumper;
@@ -55,6 +56,25 @@ public partial class GetPlaybackConfigurationResponse : AmazonWebServiceResponse
5556
private string _transcodeProfileName;
5657
private string _videoContentSourceUrl;
5758

59+
/// <summary>
60+
/// Gets and sets the property AdConditioningConfiguration.
61+
/// <para>
62+
/// The setting that indicates what conditioning MediaTailor will perform on ads that
63+
/// the ad decision server (ADS) returns.
64+
/// </para>
65+
/// </summary>
66+
public AdConditioningConfiguration AdConditioningConfiguration
67+
{
68+
get { return this._adConditioningConfiguration; }
69+
set { this._adConditioningConfiguration = value; }
70+
}
71+
72+
// Check to see if AdConditioningConfiguration property is set
73+
internal bool IsSetAdConditioningConfiguration()
74+
{
75+
return this._adConditioningConfiguration != null;
76+
}
77+
5878
/// <summary>
5979
/// Gets and sets the property AdDecisionServerUrl.
6080
/// <para>
@@ -138,7 +158,7 @@ internal bool IsSetCdnConfiguration()
138158
/// Gets and sets the property ConfigurationAliases.
139159
/// <para>
140160
/// The player parameters and aliases used as dynamic variables during session initialization.
141-
/// For more information, see <a href="https://docs.aws.amazon.com/mediatailor/latest/ug/variables-domain.html">Domain
161+
/// For more information, see <a href="https://docs.aws.amazon.com/mediatailor/latest/ug/variables-domains.html">Domain
142162
/// Variables</a>.
143163
/// </para>
144164
/// </summary>
@@ -233,7 +253,8 @@ internal bool IsSetLivePreRollConfiguration()
233253
/// <summary>
234254
/// Gets and sets the property LogConfiguration.
235255
/// <para>
236-
/// The Amazon CloudWatch log settings for a playback configuration.
256+
/// The configuration that defines where AWS Elemental MediaTailor sends logs for the
257+
/// playback configuration.
237258
/// </para>
238259
/// </summary>
239260
public LogConfiguration LogConfiguration
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
/*
2+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License").
5+
* You may not use this file except in compliance with the License.
6+
* A copy of the License is located at
7+
*
8+
* http://aws.amazon.com/apache2.0
9+
*
10+
* or in the "license" file accompanying this file. This file is distributed
11+
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12+
* express or implied. See the License for the specific language governing
13+
* permissions and limitations under the License.
14+
*/
15+
16+
/*
17+
* Do not modify this file. This file is generated from the mediatailor-2018-04-23.normal.json service model.
18+
*/
19+
using System;
20+
using System.Collections.Generic;
21+
using System.Globalization;
22+
using System.IO;
23+
using System.Text;
24+
using System.Xml.Serialization;
25+
26+
using Amazon.MediaTailor.Model;
27+
using Amazon.Runtime;
28+
using Amazon.Runtime.Internal;
29+
using Amazon.Runtime.Internal.Transform;
30+
using Amazon.Runtime.Internal.Util;
31+
using ThirdParty.Json.LitJson;
32+
33+
#pragma warning disable CS0612,CS0618
34+
namespace Amazon.MediaTailor.Model.Internal.MarshallTransformations
35+
{
36+
/// <summary>
37+
/// AdConditioningConfiguration Marshaller
38+
/// </summary>
39+
public class AdConditioningConfigurationMarshaller : IRequestMarshaller<AdConditioningConfiguration, JsonMarshallerContext>
40+
{
41+
/// <summary>
42+
/// Unmarshaller the response from the service to the response class.
43+
/// </summary>
44+
/// <param name="requestObject"></param>
45+
/// <param name="context"></param>
46+
/// <returns></returns>
47+
public void Marshall(AdConditioningConfiguration requestObject, JsonMarshallerContext context)
48+
{
49+
if(requestObject == null)
50+
return;
51+
if(requestObject.IsSetStreamingMediaFileConditioning())
52+
{
53+
context.Writer.WritePropertyName("StreamingMediaFileConditioning");
54+
context.Writer.Write(requestObject.StreamingMediaFileConditioning);
55+
}
56+
57+
}
58+
59+
/// <summary>
60+
/// Singleton Marshaller.
61+
/// </summary>
62+
public readonly static AdConditioningConfigurationMarshaller Instance = new AdConditioningConfigurationMarshaller();
63+
64+
}
65+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
/*
2+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License").
5+
* You may not use this file except in compliance with the License.
6+
* A copy of the License is located at
7+
*
8+
* http://aws.amazon.com/apache2.0
9+
*
10+
* or in the "license" file accompanying this file. This file is distributed
11+
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12+
* express or implied. See the License for the specific language governing
13+
* permissions and limitations under the License.
14+
*/
15+
16+
/*
17+
* Do not modify this file. This file is generated from the mediatailor-2018-04-23.normal.json service model.
18+
*/
19+
using System;
20+
using System.Collections.Generic;
21+
using System.Globalization;
22+
using System.IO;
23+
using System.Net;
24+
using System.Text;
25+
using System.Xml.Serialization;
26+
27+
using Amazon.MediaTailor.Model;
28+
using Amazon.Runtime;
29+
using Amazon.Runtime.Internal;
30+
using Amazon.Runtime.Internal.Transform;
31+
using Amazon.Runtime.Internal.Util;
32+
using ThirdParty.Json.LitJson;
33+
34+
#pragma warning disable CS0612,CS0618
35+
namespace Amazon.MediaTailor.Model.Internal.MarshallTransformations
36+
{
37+
/// <summary>
38+
/// Response Unmarshaller for AdConditioningConfiguration Object
39+
/// </summary>
40+
public class AdConditioningConfigurationUnmarshaller : IUnmarshaller<AdConditioningConfiguration, XmlUnmarshallerContext>, IUnmarshaller<AdConditioningConfiguration, JsonUnmarshallerContext>
41+
{
42+
/// <summary>
43+
/// Unmarshaller the response from the service to the response class.
44+
/// </summary>
45+
/// <param name="context"></param>
46+
/// <returns></returns>
47+
AdConditioningConfiguration IUnmarshaller<AdConditioningConfiguration, XmlUnmarshallerContext>.Unmarshall(XmlUnmarshallerContext context)
48+
{
49+
throw new NotImplementedException();
50+
}
51+
52+
/// <summary>
53+
/// Unmarshaller the response from the service to the response class.
54+
/// </summary>
55+
/// <param name="context"></param>
56+
/// <returns>The unmarshalled object</returns>
57+
public AdConditioningConfiguration Unmarshall(JsonUnmarshallerContext context)
58+
{
59+
AdConditioningConfiguration unmarshalledObject = new AdConditioningConfiguration();
60+
if (context.IsEmptyResponse)
61+
return null;
62+
context.Read();
63+
if (context.CurrentTokenType == JsonToken.Null)
64+
return null;
65+
66+
int targetDepth = context.CurrentDepth;
67+
while (context.ReadAtDepth(targetDepth))
68+
{
69+
if (context.TestExpression("StreamingMediaFileConditioning", targetDepth))
70+
{
71+
var unmarshaller = StringUnmarshaller.Instance;
72+
unmarshalledObject.StreamingMediaFileConditioning = unmarshaller.Unmarshall(context);
73+
continue;
74+
}
75+
}
76+
return unmarshalledObject;
77+
}
78+
79+
80+
private static AdConditioningConfigurationUnmarshaller _instance = new AdConditioningConfigurationUnmarshaller();
81+
82+
/// <summary>
83+
/// Gets the singleton.
84+
/// </summary>
85+
public static AdConditioningConfigurationUnmarshaller Instance
86+
{
87+
get
88+
{
89+
return _instance;
90+
}
91+
}
92+
}
93+
}

sdk/src/Services/MediaTailor/Generated/Model/Internal/MarshallTransformations/GetPlaybackConfigurationResponseUnmarshaller.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,12 @@ public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext cont
5252
int targetDepth = context.CurrentDepth;
5353
while (context.ReadAtDepth(targetDepth))
5454
{
55+
if (context.TestExpression("AdConditioningConfiguration", targetDepth))
56+
{
57+
var unmarshaller = AdConditioningConfigurationUnmarshaller.Instance;
58+
response.AdConditioningConfiguration = unmarshaller.Unmarshall(context);
59+
continue;
60+
}
5561
if (context.TestExpression("AdDecisionServerUrl", targetDepth))
5662
{
5763
var unmarshaller = StringUnmarshaller.Instance;

sdk/src/Services/MediaTailor/Generated/Model/Internal/MarshallTransformations/PlaybackConfigurationUnmarshaller.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,12 @@ public PlaybackConfiguration Unmarshall(JsonUnmarshallerContext context)
6666
int targetDepth = context.CurrentDepth;
6767
while (context.ReadAtDepth(targetDepth))
6868
{
69+
if (context.TestExpression("AdConditioningConfiguration", targetDepth))
70+
{
71+
var unmarshaller = AdConditioningConfigurationUnmarshaller.Instance;
72+
unmarshalledObject.AdConditioningConfiguration = unmarshaller.Unmarshall(context);
73+
continue;
74+
}
6975
if (context.TestExpression("AdDecisionServerUrl", targetDepth))
7076
{
7177
var unmarshaller = StringUnmarshaller.Instance;

0 commit comments

Comments
 (0)