/*
* Copyright 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 neptune-2014-10-31.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Neptune.Model
{
///
/// Container for the parameters to the CreateDBParameterGroup operation.
/// Creates a new DB parameter group.
///
///
///
/// A DB parameter group is initially created with the default parameters for the database
/// engine used by the DB instance. To provide custom values for any of the parameters,
/// you must modify the group after creating it using ModifyDBParameterGroup. Once
/// you've created a DB parameter group, you need to associate it with your DB instance
/// using ModifyDBInstance. When you associate a new DB parameter group with a
/// running DB instance, you need to reboot the DB instance without failover for the new
/// DB parameter group and associated settings to take effect.
///
///
///
/// After you create a DB parameter group, you should wait at least 5 minutes before creating
/// your first DB instance that uses that DB parameter group as the default parameter
/// group. This allows Amazon Neptune to fully complete the create action before the parameter
/// group is used as the default for a new DB instance. This is especially important for
/// parameters that are critical when creating the default database for a DB instance,
/// such as the character set for the default database defined by the character_set_database
/// parameter. You can use the Parameter Groups option of the Amazon Neptune console
/// or the DescribeDBParameters command to verify that your DB parameter group
/// has been created or modified.
///
///
///
public partial class CreateDBParameterGroupRequest : AmazonNeptuneRequest
{
private string _dbParameterGroupFamily;
private string _dbParameterGroupName;
private string _description;
private List _tags = new List();
///
/// Gets and sets the property DBParameterGroupFamily.
///
/// The DB parameter group family name. A DB parameter group can be associated with one
/// and only one DB parameter group family, and can be applied only to a DB instance running
/// a database engine and engine version compatible with that DB parameter group family.
///
///
[AWSProperty(Required=true)]
public string DBParameterGroupFamily
{
get { return this._dbParameterGroupFamily; }
set { this._dbParameterGroupFamily = value; }
}
// Check to see if DBParameterGroupFamily property is set
internal bool IsSetDBParameterGroupFamily()
{
return this._dbParameterGroupFamily != null;
}
///
/// Gets and sets the property DBParameterGroupName.
///
/// The name of the DB parameter group.
///
///
///
/// Constraints:
///
/// -
///
/// Must be 1 to 255 letters, numbers, or hyphens.
///
///
-
///
/// First character must be a letter
///
///
-
///
/// Cannot end with a hyphen or contain two consecutive hyphens
///
///
///
/// This value is stored as a lowercase string.
///
///
///
[AWSProperty(Required=true)]
public string DBParameterGroupName
{
get { return this._dbParameterGroupName; }
set { this._dbParameterGroupName = value; }
}
// Check to see if DBParameterGroupName property is set
internal bool IsSetDBParameterGroupName()
{
return this._dbParameterGroupName != null;
}
///
/// Gets and sets the property Description.
///
/// The description for the DB parameter group.
///
///
[AWSProperty(Required=true)]
public string Description
{
get { return this._description; }
set { this._description = value; }
}
// Check to see if Description property is set
internal bool IsSetDescription()
{
return this._description != null;
}
///
/// Gets and sets the property Tags.
///
/// The tags to be assigned to the new DB parameter group.
///
///
public List Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
}
}