github.com/vmware/go-vcloud-director/v2@v2.24.0/govcd/extension.go (about)

     1  /*
     2   * Copyright 2019 VMware, Inc.  All rights reserved.  Licensed under the Apache v2 License.
     3   */
     4  
     5  package govcd
     6  
     7  import (
     8  	"github.com/vmware/go-vcloud-director/v2/types/v56"
     9  	"net/http"
    10  )
    11  
    12  // Deprecated: please use GetExternalNetwork function instead
    13  func GetExternalNetworkByName(vcdClient *VCDClient, networkName string) (*types.ExternalNetworkReference, error) {
    14  	extNetworkRefs := &types.ExternalNetworkReferences{}
    15  
    16  	extNetworkHREF, err := getExternalNetworkHref(&vcdClient.Client)
    17  	if err != nil {
    18  		return &types.ExternalNetworkReference{}, err
    19  	}
    20  
    21  	_, err = vcdClient.Client.ExecuteRequest(extNetworkHREF, http.MethodGet,
    22  		"", "error retrieving external networks: %s", nil, extNetworkRefs)
    23  	if err != nil {
    24  		return &types.ExternalNetworkReference{}, err
    25  	}
    26  
    27  	for _, netRef := range extNetworkRefs.ExternalNetworkReference {
    28  		if netRef.Name == networkName {
    29  			return netRef, nil
    30  		}
    31  	}
    32  
    33  	return &types.ExternalNetworkReference{}, nil
    34  }