file

package
v3.3.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 24, 2025 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConvertToMapOfFileCache

func ConvertToMapOfFileCache(convertFiles []*mpi.File) map[string]*model.FileCache

ConvertToMapOfFiles converts a list of files to a map of file caches (file and action) with the file name as the key

Types

type FileManagerService

type FileManagerService struct {
	// contains filtered or unexported fields
}

func NewFileManagerService

func NewFileManagerService(fileServiceClient mpi.FileServiceClient, agentConfig *config.Config,
	manifestLock *sync.RWMutex,
) *FileManagerService

func (*FileManagerService) ClearCache

func (fms *FileManagerService) ClearCache()

func (*FileManagerService) ConfigApply

func (fms *FileManagerService) ConfigApply(ctx context.Context,
	configApplyRequest *mpi.ConfigApplyRequest,
) (status model.WriteStatus, err error)

func (*FileManagerService) ConfigUpdate added in v3.2.0

func (fms *FileManagerService) ConfigUpdate(ctx context.Context,
	nginxConfigContext *model.NginxConfigContext,
)

func (*FileManagerService) ConfigUpload added in v3.2.0

func (fms *FileManagerService) ConfigUpload(ctx context.Context, configUploadRequest *mpi.ConfigUploadRequest) error

func (*FileManagerService) DetermineFileActions

func (fms *FileManagerService) DetermineFileActions(
	ctx context.Context,
	currentFiles map[string]*mpi.File,
	modifiedFiles map[string]*model.FileCache,
) (
	map[string]*model.FileCache,
	map[string][]byte,
	error,
)

DetermineFileActions compares two sets of files to determine the file action for each file. Returns a map of files that have changed and a map of the contents for each updated and deleted file. Key to both maps is file path

func (*FileManagerService) IsConnected

func (fms *FileManagerService) IsConnected() bool

func (*FileManagerService) ResetClient added in v3.3.1

func (fms *FileManagerService) ResetClient(ctx context.Context, fileServiceClient mpi.FileServiceClient)

func (*FileManagerService) Rollback

func (fms *FileManagerService) Rollback(ctx context.Context, instanceID string) error

func (*FileManagerService) SetIsConnected

func (fms *FileManagerService) SetIsConnected(isConnected bool)

func (*FileManagerService) UpdateCurrentFilesOnDisk

func (fms *FileManagerService) UpdateCurrentFilesOnDisk(
	ctx context.Context,
	currentFiles map[string]*mpi.File,
	referenced bool,
) error

UpdateCurrentFilesOnDisk updates the FileManagerService currentFilesOnDisk slice which contains the files currently on disk

func (*FileManagerService) UpdateManifestFile

func (fms *FileManagerService) UpdateManifestFile(ctx context.Context,
	currentFiles map[string]*mpi.File, referenced bool,
) (err error)

seems to be a control flag, avoid control coupling

type FileOperator

type FileOperator struct {
	// contains filtered or unexported fields
}

func NewFileOperator

func NewFileOperator(manifestLock *sync.RWMutex) *FileOperator

func (*FileOperator) CreateFileDirectories

func (fo *FileOperator) CreateFileDirectories(
	ctx context.Context,
	fileMeta *mpi.FileMeta,
	filePermission os.FileMode,
) error

func (*FileOperator) ReadChunk

func (fo *FileOperator) ReadChunk(
	ctx context.Context,
	chunkSize uint32,
	reader *bufio.Reader,
	chunkID uint32,
) (mpi.FileDataChunk_Content, error)

func (*FileOperator) Write

func (fo *FileOperator) Write(ctx context.Context, fileContent []byte, file *mpi.FileMeta) error

func (*FileOperator) WriteChunkedFile

func (fo *FileOperator) WriteChunkedFile(
	ctx context.Context,
	file *mpi.File,
	header *mpi.FileDataChunkHeader,
	stream grpc.ServerStreamingClient[mpi.FileDataChunk],
) error

func (*FileOperator) WriteManifestFile added in v3.2.0

func (fo *FileOperator) WriteManifestFile(ctx context.Context, updatedFiles map[string]*model.ManifestFile, manifestDir,
	manifestPath string,
) (writeError error)

type FilePlugin

type FilePlugin struct {
	// contains filtered or unexported fields
}

func NewFilePlugin

func NewFilePlugin(agentConfig *config.Config, grpcConnection grpc.GrpcConnectionInterface,
	serverType model.ServerType, manifestLock *sync.RWMutex,
) *FilePlugin

func (*FilePlugin) Close

func (fp *FilePlugin) Close(ctx context.Context) error

func (*FilePlugin) Info

func (fp *FilePlugin) Info() *bus.Info

func (*FilePlugin) Init

func (fp *FilePlugin) Init(ctx context.Context, messagePipe bus.MessagePipeInterface) error

func (*FilePlugin) Process

func (fp *FilePlugin) Process(ctx context.Context, msg *bus.Message)

func (*FilePlugin) Subscriptions

func (fp *FilePlugin) Subscriptions() []string

type FileServiceOperator added in v3.2.0

type FileServiceOperator struct {
	// contains filtered or unexported fields
}

func NewFileServiceOperator added in v3.2.0

func NewFileServiceOperator(agentConfig *config.Config, fileServiceClient mpi.FileServiceClient,
	manifestLock *sync.RWMutex,
) *FileServiceOperator

func (*FileServiceOperator) ChunkedFile added in v3.2.0

func (fso *FileServiceOperator) ChunkedFile(ctx context.Context, file *mpi.File) error

func (*FileServiceOperator) File added in v3.2.0

func (fso *FileServiceOperator) File(ctx context.Context, file *mpi.File,
	fileActions map[string]*model.FileCache,
) error

func (*FileServiceOperator) IsConnected added in v3.2.0

func (fso *FileServiceOperator) IsConnected() bool

func (*FileServiceOperator) SetIsConnected added in v3.2.0

func (fso *FileServiceOperator) SetIsConnected(isConnected bool)

func (*FileServiceOperator) UpdateClient added in v3.3.1

func (fso *FileServiceOperator) UpdateClient(ctx context.Context, fileServiceClient mpi.FileServiceClient)

func (*FileServiceOperator) UpdateFile added in v3.2.0

func (fso *FileServiceOperator) UpdateFile(
	ctx context.Context,
	instanceID string,
	fileToUpdate *mpi.File,
) error

func (*FileServiceOperator) UpdateOverview added in v3.2.0

func (fso *FileServiceOperator) UpdateOverview(
	ctx context.Context,
	instanceID string,
	filesToUpdate []*mpi.File,
	configPath string,
	iteration int,
) error

Directories

Path Synopsis
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL