mirror of
https://github.com/1Password/onepassword-operator.git
synced 2025-10-22 15:38:06 +00:00

These internal models are introduced to reduce decoupling. The idea is to operate internal model within the project boundaries and convert to appropriate Connect or SDK models in the places where it's necessary.
28 lines
653 B
Go
28 lines
653 B
Go
package model
|
|
|
|
import (
|
|
"errors"
|
|
)
|
|
|
|
// File represents a file stored in 1Password.
|
|
type File struct {
|
|
ID string
|
|
Name string
|
|
Size int
|
|
ContentPath string
|
|
content []byte
|
|
}
|
|
|
|
// Content returns the content of the file if they have been loaded and returns an error if they have not been loaded.
|
|
// Use `client.GetFileContent(file *File)` instead to make sure the content is fetched automatically if not present.
|
|
func (f *File) Content() ([]byte, error) {
|
|
if f.content == nil {
|
|
return nil, errors.New("file content not loaded")
|
|
}
|
|
return f.content, nil
|
|
}
|
|
|
|
func (f *File) SetContent(content []byte) {
|
|
f.content = content
|
|
}
|