1// Copyright (c) 2016, 2018, 2019, Oracle and/or its affiliates. All rights reserved.
2// Code generated. DO NOT EDIT.
3
4// Core Services API
5//
6// API covering the Networking (https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/overview.htm),
7// Compute (https://docs.cloud.oracle.com/iaas/Content/Compute/Concepts/computeoverview.htm), and
8// Block Volume (https://docs.cloud.oracle.com/iaas/Content/Block/Concepts/overview.htm) services. Use this API
9// to manage resources such as virtual cloud networks (VCNs), compute instances, and
10// block storage volumes.
11//
12
13package core
14
15import (
16	"github.com/oracle/oci-go-sdk/common"
17)
18
19// CreateLocalPeeringGatewayDetails The representation of CreateLocalPeeringGatewayDetails
20type CreateLocalPeeringGatewayDetails struct {
21
22	// The OCID of the compartment containing the local peering gateway (LPG).
23	CompartmentId *string `mandatory:"true" json:"compartmentId"`
24
25	// The OCID of the VCN the LPG belongs to.
26	VcnId *string `mandatory:"true" json:"vcnId"`
27
28	// Defined tags for this resource. Each key is predefined and scoped to a
29	// namespace. For more information, see Resource Tags (https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
30	// Example: `{"Operations": {"CostCenter": "42"}}`
31	DefinedTags map[string]map[string]interface{} `mandatory:"false" json:"definedTags"`
32
33	// A user-friendly name. Does not have to be unique, and it's changeable. Avoid
34	// entering confidential information.
35	DisplayName *string `mandatory:"false" json:"displayName"`
36
37	// Free-form tags for this resource. Each tag is a simple key-value pair with no
38	// predefined name, type, or namespace. For more information, see Resource Tags (https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
39	// Example: `{"Department": "Finance"}`
40	FreeformTags map[string]string `mandatory:"false" json:"freeformTags"`
41
42	// The OCID of the route table the LPG will use.
43	// If you don't specify a route table here, the LPG is created without an associated route
44	// table. The Networking service does NOT automatically associate the attached VCN's default route table
45	// with the LPG.
46	// For information about why you would associate a route table with an LPG, see
47	// Transit Routing: Access to Multiple VCNs in Same Region (https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm).
48	RouteTableId *string `mandatory:"false" json:"routeTableId"`
49}
50
51func (m CreateLocalPeeringGatewayDetails) String() string {
52	return common.PointerString(m)
53}
54