func NewPortForwardingV2(ctx *pulumi.Context,
	name string, args *PortForwardingV2Args, opts ...pulumi.ResourceOption) (*PortForwardingV2, error) {
	if args == nil {
		return nil, errors.New("missing one or more required arguments")
	}

	if args.ExternalPort == nil {
		return nil, errors.New("invalid value for required argument 'ExternalPort'")
	}
	if args.FloatingipId == nil {
		return nil, errors.New("invalid value for required argument 'FloatingipId'")
	}
	if args.InternalIpAddress == nil {
		return nil, errors.New("invalid value for required argument 'InternalIpAddress'")
	}
	if args.InternalPort == nil {
		return nil, errors.New("invalid value for required argument 'InternalPort'")
	}
	if args.InternalPortId == nil {
		return nil, errors.New("invalid value for required argument 'InternalPortId'")
	}
	if args.Protocol == nil {
		return nil, errors.New("invalid value for required argument 'Protocol'")
	}
	var resource PortForwardingV2
	err := ctx.RegisterResource("openstack:networking/portForwardingV2:PortForwardingV2", name, args, &resource, opts...)
	if err != nil {
		return nil, err
	}
	return &resource, nil
}
// NewPortForwardingV2 registers a new resource with the given unique name, arguments, and options.
NewPortForwardingV2 registers a new resource with the given unique name, arguments, and options.
// NewPortForwardingV2 registers a new resource with the given unique name arguments and options .
func NewPortForwardingV2(ctx *pulumi.Context,
	name string, args *PortForwardingV2Args, opts ...pulumi.ResourceOption) (*PortForwardingV2, error) {
	if args == nil {
		return nil, errors.New("missing one or more required arguments")
	}
	if args.ExternalPort == nil {
		return nil, errors.New("invalid value for required argument 'ExternalPort'")
	}
	if args.FloatingipId == nil {
		return nil, errors.New("invalid value for required argument 'FloatingipId'")
	}
	if args.InternalIpAddress == nil {
		return nil, errors.New("invalid value for required argument 'InternalIpAddress'")
	}
	if args.InternalPort == nil {
		return nil, errors.New("invalid value for required argument 'InternalPort'")
	}
	if args.InternalPortId == nil {
		return nil, errors.New("invalid value for required argument 'InternalPortId'")
	}
	if args.Protocol == nil {
		return nil, errors.New("invalid value for required argument 'Protocol'")
	}
	var resource PortForwardingV2
	err := ctx.RegisterResource("openstack:networking/portForwardingV2:PortForwardingV2", name, args, &resource, opts...)
	if err != nil {
		return nil, err
	}
	return &resource, nil
}
func NewPortForwardingV2 ( ctx * pulumi . Context , name string , args * PortForwardingV2Args , opts ... pulumi . ResourceOption ) ( * PortForwardingV2 , error ) { if args == nil { return nil , errors . New ( " " ) } if args . ExternalPort == nil { return nil , errors . New ( " " ) } if args . FloatingipId == nil { return nil , errors . New ( " " ) } if args . InternalIpAddress == nil { return nil , errors . New ( " " ) } if args . InternalPort == nil { return nil , errors . New ( " " ) } if args . InternalPortId == nil { return nil , errors . New ( " " ) } if args . Protocol == nil { return nil , errors . New ( " " ) } var resource PortForwardingV2 err := ctx . RegisterResource ( " " , name , args , & resource , opts ... ) if err != nil { return nil , err } return & resource , nil }
NewPortForwardingV2 registers a new resource with the given unique name, arguments, and options.
NewPortForwardingV2 registers a new resource with the given unique name arguments and options .