importservice

package
v0.2.6-beta.1 Latest Latest
Warning

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

Go to latest
Published: Dec 18, 2025 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Package importservice provides project import functionality.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FixtureConflictStrategy

type FixtureConflictStrategy string

FixtureConflictStrategy determines how to handle fixture conflicts.

const (
	FixtureConflictSkip    FixtureConflictStrategy = "SKIP"
	FixtureConflictReplace FixtureConflictStrategy = "REPLACE"
	FixtureConflictRename  FixtureConflictStrategy = "RENAME"
)

type ImportMode

type ImportMode string

ImportMode determines how to handle the import.

const (
	ImportModeCreate  ImportMode = "CREATE"
	ImportModeMerge   ImportMode = "MERGE"
	ImportModeReplace ImportMode = "REPLACE"
)

type ImportOptions

type ImportOptions struct {
	Mode                    ImportMode
	TargetProjectID         *string
	ProjectName             *string
	FixtureConflictStrategy FixtureConflictStrategy
	ImportBuiltInFixtures   bool
}

ImportOptions configures the import behavior.

type ImportStats

type ImportStats struct {
	FixtureDefinitionsCreated int
	FixtureInstancesCreated   int
	ScenesCreated             int
	CueListsCreated           int
	CuesCreated               int
	SceneBoardsCreated        int
}

ImportStats contains statistics about an import.

type Service

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

Service handles project import operations.

func NewService

NewService creates a new import service.

func NewServiceWithSceneBoards added in v0.2.4

func NewServiceWithSceneBoards(
	projectRepo *repositories.ProjectRepository,
	fixtureRepo *repositories.FixtureRepository,
	sceneRepo *repositories.SceneRepository,
	cueListRepo *repositories.CueListRepository,
	cueRepo *repositories.CueRepository,
	sceneBoardRepo *repositories.SceneBoardRepository,
) *Service

NewServiceWithSceneBoards creates a new import service with scene board support.

func (*Service) ImportProject

func (s *Service) ImportProject(ctx context.Context, jsonContent string, options ImportOptions) (string, *ImportStats, []string, error)

ImportProject imports a project from JSON.

Jump to

Keyboard shortcuts

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