/*
* Copyright 2010-2014 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the dynamodbstreams-2012-08-10.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.DynamoDBv2.Model
{
///
/// A description of a unique event within a stream.
///
public partial class Record
{
private string _awsRegion;
private StreamRecord _dynamodb;
private string _eventid;
private OperationType _eventName;
private string _eventSource;
private string _eventVersion;
private Identity _userIdentity;
///
/// Gets and sets the property AwsRegion.
///
/// The region in which the GetRecords
request was received.
///
///
public string AwsRegion
{
get { return this._awsRegion; }
set { this._awsRegion = value; }
}
// Check to see if AwsRegion property is set
internal bool IsSetAwsRegion()
{
return this._awsRegion != null;
}
///
/// Gets and sets the property Dynamodb.
///
/// The main body of the stream record, containing all of the DynamoDB-specific fields.
///
///
public StreamRecord Dynamodb
{
get { return this._dynamodb; }
set { this._dynamodb = value; }
}
// Check to see if Dynamodb property is set
internal bool IsSetDynamodb()
{
return this._dynamodb != null;
}
///
/// Gets and sets the property EventID.
///
/// A globally unique identifier for the event that was recorded in this stream record.
///
///
public string EventID
{
get { return this._eventid; }
set { this._eventid = value; }
}
// Check to see if EventID property is set
internal bool IsSetEventID()
{
return this._eventid != null;
}
///
/// Gets and sets the property EventName.
///
/// The type of data modification that was performed on the DynamoDB table:
///
/// -
///
///
INSERT
- a new item was added to the table.
///
/// -
///
///
MODIFY
- one or more of an existing item's attributes were modified.
///
/// -
///
///
REMOVE
- the item was deleted from the table
///
///
///
public OperationType EventName
{
get { return this._eventName; }
set { this._eventName = value; }
}
// Check to see if EventName property is set
internal bool IsSetEventName()
{
return this._eventName != null;
}
///
/// Gets and sets the property EventSource.
///
/// The AWS service from which the stream record originated. For DynamoDB Streams, this
/// is aws:dynamodb
.
///
///
public string EventSource
{
get { return this._eventSource; }
set { this._eventSource = value; }
}
// Check to see if EventSource property is set
internal bool IsSetEventSource()
{
return this._eventSource != null;
}
///
/// Gets and sets the property EventVersion.
///
/// The version number of the stream record format. This number is updated whenever the
/// structure of Record
is modified.
///
///
///
/// Client applications must not assume that eventVersion
will remain at
/// a particular value, as this number is subject to change at any time. In general, eventVersion
/// will only increase as the low-level DynamoDB Streams API evolves.
///
///
public string EventVersion
{
get { return this._eventVersion; }
set { this._eventVersion = value; }
}
// Check to see if EventVersion property is set
internal bool IsSetEventVersion()
{
return this._eventVersion != null;
}
///
/// Gets and sets the property UserIdentity.
///
/// Items that are deleted by the Time to Live process after expiration have the following
/// fields:
///
/// -
///
/// Records[].userIdentity.type
///
///
///
/// "Service"
///
///
-
///
/// Records[].userIdentity.principalId
///
///
///
/// "dynamodb.amazonaws.com"
///
///
///
public Identity UserIdentity
{
get { return this._userIdentity; }
set { this._userIdentity = value; }
}
// Check to see if UserIdentity property is set
internal bool IsSetUserIdentity()
{
return this._userIdentity != null;
}
}
}