github.com/myhau/pulumi/pkg/v3@v3.70.2-0.20221116134521-f2775972e587/codegen/testing/test/testdata/external-resource-schema/dotnet/Cat.cs (about)

     1  // *** WARNING: this file was generated by test. ***
     2  // *** Do not edit by hand unless you're certain you know what you are doing! ***
     3  
     4  using System;
     5  using System.Collections.Generic;
     6  using System.Collections.Immutable;
     7  using System.Threading.Tasks;
     8  using Pulumi.Serialization;
     9  
    10  namespace Pulumi.Example
    11  {
    12      [ExampleResourceType("example::Cat")]
    13      public partial class Cat : global::Pulumi.CustomResource
    14      {
    15          [Output("name")]
    16          public Output<string?> Name { get; private set; } = null!;
    17  
    18  
    19          /// <summary>
    20          /// Create a Cat resource with the given unique name, arguments, and options.
    21          /// </summary>
    22          ///
    23          /// <param name="name">The unique name of the resource</param>
    24          /// <param name="args">The arguments used to populate this resource's properties</param>
    25          /// <param name="options">A bag of options that control this resource's behavior</param>
    26          public Cat(string name, CatArgs? args = null, CustomResourceOptions? options = null)
    27              : base("example::Cat", name, args ?? new CatArgs(), MakeResourceOptions(options, ""))
    28          {
    29          }
    30  
    31          private Cat(string name, Input<string> id, CustomResourceOptions? options = null)
    32              : base("example::Cat", name, null, MakeResourceOptions(options, id))
    33          {
    34          }
    35  
    36          private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input<string>? id)
    37          {
    38              var defaultOptions = new CustomResourceOptions
    39              {
    40                  Version = Utilities.Version,
    41              };
    42              var merged = CustomResourceOptions.Merge(defaultOptions, options);
    43              // Override the ID if one was specified for consistency with other language SDKs.
    44              merged.Id = id ?? merged.Id;
    45              return merged;
    46          }
    47          /// <summary>
    48          /// Get an existing Cat resource's state with the given name, ID, and optional extra
    49          /// properties used to qualify the lookup.
    50          /// </summary>
    51          ///
    52          /// <param name="name">The unique name of the resulting resource.</param>
    53          /// <param name="id">The unique provider ID of the resource to lookup.</param>
    54          /// <param name="options">A bag of options that control this resource's behavior</param>
    55          public static Cat Get(string name, Input<string> id, CustomResourceOptions? options = null)
    56          {
    57              return new Cat(name, id, options);
    58          }
    59      }
    60  
    61      public sealed class CatArgs : global::Pulumi.ResourceArgs
    62      {
    63          [Input("age")]
    64          public Input<int>? Age { get; set; }
    65  
    66          [Input("pet")]
    67          public Input<Inputs.PetArgs>? Pet { get; set; }
    68  
    69          public CatArgs()
    70          {
    71          }
    72          public static new CatArgs Empty => new CatArgs();
    73      }
    74  }