some work for loading a workspace

This commit is contained in:
2024-09-06 16:55:04 +02:00
parent f0f63a1895
commit 5e678db077
7 changed files with 114 additions and 14 deletions

View File

@@ -10,7 +10,7 @@ public abstract class WorkspaceFeature(string identifier, string name) : PluginF
return workspace?.Config == null || workspace.Config.ProviderId == Identifier;
}
public virtual bool Configure(ref IWorkspace workspace)
public virtual bool Configure(ref IWorkspace? workspace)
{
OnConfigure(ref workspace);
@@ -22,5 +22,13 @@ public abstract class WorkspaceFeature(string identifier, string name) : PluginF
return true;
}
protected abstract bool OnConfigure(ref IWorkspace workspace);
public virtual IWorkspace CreateFromSettings(WorkspaceConfig config)
{
OnCreate(out var workspace, config);
return workspace;
}
protected abstract void OnCreate(out IWorkspace workspace, WorkspaceConfig config);
protected abstract bool OnConfigure(ref IWorkspace? workspace);
}