BadScript 2
Loading...
Searching...
No Matches
BadScript2.Container.BadFileSystemStack Class Reference

Public Member Functions

BadFileSystemStack ConfigureLayer (Func< BadLayeredFileSystemLayer > config)
 
BadLayeredFileSystem Create (bool createWritable=false)
 

Static Public Member Functions

static async Task< BadFileSystemStackFromConfigs (params BadFileSystemStackConfig[] configs)
 

Private Attributes

readonly List< Func< BadLayeredFileSystemLayer > > m_FileSystemConfigs = new List<Func<BadLayeredFileSystemLayer>>()
 

Detailed Description

Definition at line 12 of file BadFileSystemStack.cs.

Member Function Documentation

◆ ConfigureLayer()

BadFileSystemStack BadScript2.Container.BadFileSystemStack.ConfigureLayer ( Func< BadLayeredFileSystemLayer config)

Definition at line 39 of file BadFileSystemStack.cs.

40 {
41 m_FileSystemConfigs.Add(config);
42 return this;
43 }
readonly List< Func< BadLayeredFileSystemLayer > > m_FileSystemConfigs

◆ Create()

BadLayeredFileSystem BadScript2.Container.BadFileSystemStack.Create ( bool  createWritable = false)

Definition at line 45 of file BadFileSystemStack.cs.

46 {
47 var fileSystems = new List<BadLayeredFileSystemLayer>();
48 foreach (var config in m_FileSystemConfigs) fileSystems.Add(config());
49
50 if(!createWritable)
51 fileSystems.Add(new BadLayeredFileSystemLayer
52 {
53 Name = "Writable Layer",
54 FileSystem = new BadVirtualFileSystem(),
55 MetaData = new JObject
56 {
57 ["AutoCreated"] = true
58 }
59 });
60
61 var fs= new BadLayeredFileSystem(fileSystems.ToArray());
62
63 fs.SetCurrentDirectory("/");
64 return fs;
65 }
Virtual File System Implementation for the BadScript Engine.

◆ FromConfigs()

static async Task< BadFileSystemStack > BadScript2.Container.BadFileSystemStack.FromConfigs ( params BadFileSystemStackConfig[]  configs)
static

Definition at line 15 of file BadFileSystemStack.cs.

16 {
17 var stack = new BadFileSystemStack();
18 foreach (var config in configs)
19 {
20 if (config.Type == "Directory")
21 {
22 stack.FromDirectory(config.Source, config.Target ?? "/", config.Name);
23 }
24 else if (config.Type == "Zip")
25 {
26 stack.FromZip(config.Source, config.Target ?? "/", config.Name);
27 }
28 else if (config.Type == "Web")
29 {
30 await stack.FromWebArchive(config.Source, config.Target ?? "/", config.Name);
31 }
32 }
33
34 return stack;
35 }

Member Data Documentation

◆ m_FileSystemConfigs

readonly List<Func<BadLayeredFileSystemLayer> > BadScript2.Container.BadFileSystemStack.m_FileSystemConfigs = new List<Func<BadLayeredFileSystemLayer>>()
private

Definition at line 37 of file BadFileSystemStack.cs.


The documentation for this class was generated from the following file: