gitlab.com/SiaPrime/SiaPrime@v1.4.1/modules/renter/dirs.go (about)

     1  package renter
     2  
     3  import (
     4  	"gitlab.com/SiaPrime/SiaPrime/modules"
     5  )
     6  
     7  // CreateDir creates a directory for the renter
     8  func (r *Renter) CreateDir(siaPath modules.SiaPath) error {
     9  	err := r.tg.Add()
    10  	if err != nil {
    11  		return err
    12  	}
    13  	defer r.tg.Done()
    14  	siaDir, err := r.staticDirSet.NewSiaDir(siaPath)
    15  	if err != nil {
    16  		return err
    17  	}
    18  	return siaDir.Close()
    19  }
    20  
    21  // DeleteDir removes a directory from the renter and deletes all its sub
    22  // directories and files
    23  func (r *Renter) DeleteDir(siaPath modules.SiaPath) error {
    24  	if err := r.tg.Add(); err != nil {
    25  		return err
    26  	}
    27  	defer r.tg.Done()
    28  	return r.staticFileSet.DeleteDir(siaPath, r.staticDirSet.Delete)
    29  }
    30  
    31  // DirList lists the directories in a siadir
    32  func (r *Renter) DirList(siaPath modules.SiaPath) ([]modules.DirectoryInfo, error) {
    33  	if err := r.tg.Add(); err != nil {
    34  		return nil, err
    35  	}
    36  	defer r.tg.Done()
    37  	return r.staticDirSet.DirList(siaPath)
    38  }
    39  
    40  // RenameDir takes an existing directory and changes the path. The original
    41  // directory must exist, and there must not be any directory that already has
    42  // the replacement path.  All sia files within directory will also be renamed
    43  func (r *Renter) RenameDir(oldPath, newPath modules.SiaPath) error {
    44  	if err := r.tg.Add(); err != nil {
    45  		return err
    46  	}
    47  	defer r.tg.Done()
    48  	return r.staticFileSet.RenameDir(oldPath, newPath, r.staticDirSet.Rename)
    49  }