c9ac014473
- Extract shared manifest types into internal/manifest/types leaf package. - Extract SQLite adapter into internal/manifest/sqlite. - Extract JSONL adapter into internal/manifest/jsonl. - Isolate modernc.org/sqlite import to sqlite/adapter.go. - Add adapter-backed registry with manifest.Default. - Adapter-agnostic ConvertManifest in types/. - MemoryAdapter for in-memory manifest testing. - CLI uses manifest.Default registry directly. - SQLite LogWriter type assertion moved into SQLiteAdapter. - Manifest interface includes Entries(); EntryReader removed. - No behavior changes. 100% coverage across all 6 packages.
18 lines
665 B
Go
18 lines
665 B
Go
package jsonl
|
|
|
|
import (
|
|
"gitea.k3s.k0.nu/tools/photocli/internal/manifest/types"
|
|
)
|
|
|
|
type Adapter struct{}
|
|
|
|
func (Adapter) Format() types.Format { return types.FormatJSONL }
|
|
func (Adapter) Aliases() []string { return []string{"json"} }
|
|
func (Adapter) Path(dir string) string { return Path(dir) }
|
|
func (Adapter) Exists(dir string) bool { return FileExists(Path(dir)) }
|
|
func (Adapter) Open(dir string) (types.Manifest, error) { return Load(dir), nil }
|
|
|
|
func (Adapter) OpenLogWriter(_ types.Manifest, dir string) (types.LogWriter, error) {
|
|
return types.NewFileLogWriter(types.LogPath(dir))
|
|
}
|