github.com/jfrog/jfrog-cli-core@v1.12.1/artifactory/utils/delete.go (about)

     1  package utils
     2  
     3  import (
     4  	"fmt"
     5  
     6  	"github.com/jfrog/jfrog-cli-core/utils/config"
     7  	"github.com/jfrog/jfrog-cli-core/utils/coreutils"
     8  	"github.com/jfrog/jfrog-client-go/artifactory"
     9  	rtclientutils "github.com/jfrog/jfrog-client-go/artifactory/services/utils"
    10  	"github.com/jfrog/jfrog-client-go/utils/io/content"
    11  )
    12  
    13  func ConfirmDelete(pathsToDeleteReader *content.ContentReader) (bool, error) {
    14  	length, err := pathsToDeleteReader.Length()
    15  	if err != nil || length < 1 {
    16  		return false, err
    17  	}
    18  	for resultItem := new(rtclientutils.ResultItem); pathsToDeleteReader.NextRecord(resultItem) == nil; resultItem = new(rtclientutils.ResultItem) {
    19  		fmt.Println("  " + resultItem.GetItemRelativePath())
    20  	}
    21  	if err := pathsToDeleteReader.GetError(); err != nil {
    22  		return false, err
    23  	}
    24  	pathsToDeleteReader.Reset()
    25  	return coreutils.AskYesNo("Are you sure you want to delete the above paths?", false), nil
    26  }
    27  
    28  func CreateDeleteServiceManager(artDetails *config.ServerDetails, threads, httpRetries int, dryRun bool) (artifactory.ArtifactoryServicesManager, error) {
    29  	return CreateServiceManagerWithThreads(artDetails, dryRun, threads, httpRetries)
    30  }