# Copyright 2023 Google LLC. 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.
# You may obtain a copy of the License at
# 
#     http://www.apache.org/licenses/LICENSE-2.0
# 
# Unless required by applicable law or agreed to in writing, software
# distributed under the License 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.
info:
  title: Compute/NetworkFirewallPolicyAssociation
  description: The Compute NetworkFirewallPolicyAssociation resource
  x-dcl-struct-name: NetworkFirewallPolicyAssociation
  x-dcl-has-iam: false
paths:
  get:
    description: The function used to get information about a NetworkFirewallPolicyAssociation
    parameters:
    - name: networkFirewallPolicyAssociation
      required: true
      description: A full instance of a NetworkFirewallPolicyAssociation
  apply:
    description: The function used to apply information about a NetworkFirewallPolicyAssociation
    parameters:
    - name: networkFirewallPolicyAssociation
      required: true
      description: A full instance of a NetworkFirewallPolicyAssociation
  delete:
    description: The function used to delete a NetworkFirewallPolicyAssociation
    parameters:
    - name: networkFirewallPolicyAssociation
      required: true
      description: A full instance of a NetworkFirewallPolicyAssociation
  deleteAll:
    description: The function used to delete all NetworkFirewallPolicyAssociation
    parameters:
    - name: project
      required: true
      schema:
        type: string
    - name: location
      required: true
      schema:
        type: string
    - name: firewallPolicy
      required: true
      schema:
        type: string
  list:
    description: The function used to list information about many NetworkFirewallPolicyAssociation
    parameters:
    - name: project
      required: true
      schema:
        type: string
    - name: location
      required: true
      schema:
        type: string
    - name: firewallPolicy
      required: true
      schema:
        type: string
components:
  schemas:
    NetworkFirewallPolicyAssociation:
      title: NetworkFirewallPolicyAssociation
      x-dcl-id: projects/{{project}}/global/firewallPolicies/{{firewall_policy}}/getAssociation?name={{name}}
      x-dcl-locations:
      - global
      - region
      x-dcl-parent-container: project
      x-dcl-has-create: true
      x-dcl-has-iam: false
      x-dcl-read-timeout: 0
      x-dcl-apply-timeout: 0
      x-dcl-delete-timeout: 0
      type: object
      required:
      - name
      - attachmentTarget
      - firewallPolicy
      - project
      properties:
        attachmentTarget:
          type: string
          x-dcl-go-name: AttachmentTarget
          description: The target that the firewall policy is attached to.
          x-kubernetes-immutable: true
          x-dcl-references:
          - resource: Compute/Network
            field: name
        firewallPolicy:
          type: string
          x-dcl-go-name: FirewallPolicy
          description: The firewall policy ID of the association.
          x-kubernetes-immutable: true
          x-dcl-references:
          - resource: Compute/FirewallPolicy
            field: name
            parent: true
        location:
          type: string
          x-dcl-go-name: Location
          description: The location of this resource.
          x-kubernetes-immutable: true
        name:
          type: string
          x-dcl-go-name: Name
          description: The name for an association.
          x-kubernetes-immutable: true
        project:
          type: string
          x-dcl-go-name: Project
          description: The project for the resource
          x-kubernetes-immutable: true
          x-dcl-references:
          - resource: Cloudresourcemanager/Project
            field: name
            parent: true
        shortName:
          type: string
          x-dcl-go-name: ShortName
          readOnly: true
          description: The short name of the firewall policy of the association.
          x-kubernetes-immutable: true
